home *** CD-ROM | disk | FTP | other *** search
Unknown | 1993-05-14 | 24.2 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
| |
100%
| xdgMime
| image/x-tga
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0b f4 3e 41 53 | 53 45 4d 0d 00 14 04 0d |.....>AS|SEM.....|
|00000010| 00 1e 1d f4 20 20 41 73 | 73 65 6d 62 6c 65 72 20 |.... As|sembler |
|00000020| 66 6f 72 20 52 69 73 63 | 79 54 4e 43 0d 00 28 13 |for Risc|yTNC..(.|
|00000030| f4 20 20 56 65 72 73 69 | 6f 6e 20 30 2e 31 32 0d |. Versi|on 0.12.|
|00000040| 00 32 1f f4 20 20 28 43 | 29 20 47 61 72 65 74 68 |.2.. (C|) Gareth|
|00000050| 20 52 6f 77 6c 61 6e 64 | 73 20 31 39 39 30 0d 00 | Rowland|s 1990..|
|00000060| 3c 24 f4 20 20 4c 61 73 | 74 20 55 70 64 61 74 65 |<$. Las|t Update|
|00000070| 20 61 73 20 70 65 72 20 | 66 69 6c 65 20 73 74 61 | as per |file sta|
|00000080| 6d 70 0d 00 46 04 0d 00 | 50 2e f4 20 20 46 72 65 |mp..F...|P.. Fre|
|00000090| 65 20 75 73 65 20 6d 61 | 79 20 62 65 20 6d 61 64 |e use ma|y be mad|
|000000a0| 65 20 6f 66 20 74 68 65 | 73 65 20 72 6f 75 74 69 |e of the|se routi|
|000000b0| 6e 65 73 2c 0d 00 5a 23 | f4 20 20 70 72 6f 76 69 |nes,..Z#|. provi|
|000000c0| 64 69 6e 67 20 6e 6f 20 | 70 72 6f 66 69 74 20 69 |ding no |profit i|
|000000d0| 73 20 6d 61 64 65 2e 0d | 00 64 04 0d 00 6e 49 f4 |s made..|.d...nI.|
|000000e0| 20 20 45 6e 74 65 72 20 | 74 68 65 73 65 20 72 6f | Enter |these ro|
|000000f0| 75 74 69 6e 65 73 20 66 | 72 6f 6d 20 42 61 73 69 |utines f|rom Basi|
|00000100| 63 2c 20 75 73 69 6e 67 | 20 41 25 20 74 6f 20 64 |c, using| A% to d|
|00000110| 65 73 63 72 69 62 65 20 | 73 65 72 76 69 63 65 20 |escribe |service |
|00000120| 74 79 70 65 0d 00 78 39 | f4 20 20 74 68 65 6e 20 |type..x9|. then |
|00000130| 43 41 4c 4c 20 74 68 65 | 20 61 64 64 72 65 73 73 |CALL the| address|
|00000140| 20 74 68 65 20 72 6f 75 | 74 69 6e 65 20 69 73 20 | the rou|tine is |
|00000150| 61 73 73 65 6d 62 6c 65 | 64 20 61 74 2e 0d 00 82 |assemble|d at....|
|00000160| 04 0d 00 8c 1a ee 20 85 | 20 f1 20 f6 24 2b 22 20 |...... .| . .$+" |
|00000170| 61 74 20 22 2b c3 28 9e | 29 3a e0 0d 00 96 2d 6c |at "+.(.|):....-l|
|00000180| 65 6e 67 74 68 25 3d 26 | 38 30 30 3a 61 64 64 72 |ength%=&|800:addr|
|00000190| 65 73 73 24 3d 22 26 36 | 30 30 30 30 22 3a 61 64 |ess$="&6|0000":ad|
|000001a0| 64 72 65 73 73 25 3d 30 | 0d 00 a0 15 de 20 70 6c |dress%=0|..... pl|
|000001b0| 61 63 65 20 28 6c 65 6e | 67 74 68 25 29 0d 00 aa |ace (len|gth%)...|
|000001c0| 29 f2 61 64 64 72 65 73 | 73 63 6f 6e 76 28 61 64 |).addres|sconv(ad|
|000001d0| 64 72 65 73 73 24 2c 70 | 6c 61 63 65 2c 61 64 64 |dress$,p|lace,add|
|000001e0| 72 65 73 73 25 29 0d 00 | b4 12 e3 20 5a 25 3d 30 |ress%)..|... Z%=0|
|000001f0| 20 b8 20 33 20 88 20 33 | 0d 00 be 1c 20 50 25 3d | . 3 . 3|.... P%=|
|00000200| 61 64 64 72 65 73 73 25 | 3a 4f 25 3d a8 28 70 6c |address%|:O%=.(pl|
|00000210| 61 63 65 29 0d 00 c8 1b | 20 f2 6d 61 69 6e 63 6f |ace)....| .mainco|
|00000220| 64 65 28 5a 25 2c 50 25 | 2c 4f 25 2c 4c 25 29 0d |de(Z%,P%|,O%,L%).|
|00000230| 00 d2 08 ed 20 5a 25 0d | 00 dc 1f 6c 65 6e 67 74 |.... Z%.|...lengt|
|00000240| 68 24 3d c3 7e 28 28 4c | 25 2d 61 64 64 72 65 73 |h$=.~((L|%-addres|
|00000250| 73 25 29 2b 34 29 0d 00 | e6 39 ff 20 22 53 41 56 |s%)+4)..|.9. "SAV|
|00000260| 45 20 3c 52 69 73 63 79 | 54 4e 43 24 44 69 72 3e |E <Riscy|TNC$Dir>|
|00000270| 2e 43 6f 64 65 20 36 30 | 30 30 30 20 2b 22 2b 6c |.Code 60|000 +"+l|
|00000280| 65 6e 67 74 68 24 2b 22 | 20 36 30 30 37 43 22 0d |ength$+"| 6007C".|
|00000290| 00 f0 24 2a 53 45 54 54 | 59 50 45 20 3c 52 69 73 |..$*SETT|YPE <Ris|
|000002a0| 63 79 54 4e 43 24 44 69 | 72 3e 2e 43 6f 64 65 20 |cyTNC$Di|r>.Code |
|000002b0| 46 46 43 0d 00 fa 05 e0 | 0d 01 04 04 0d 01 0e 2c |FFC.....|.......,|
|000002c0| dd f2 61 64 64 72 65 73 | 73 63 6f 6e 76 28 61 64 |..addres|sconv(ad|
|000002d0| 64 72 65 73 73 24 2c 70 | 6c 61 63 65 2c f8 20 61 |dress$,p|lace,. a|
|000002e0| 64 64 72 65 73 73 25 29 | 0d 01 18 23 e7 20 61 64 |ddress%)|...#. ad|
|000002f0| 64 72 65 73 73 24 3d 22 | 22 8c 20 61 64 64 72 65 |dress$="|". addre|
|00000300| 73 73 25 3d 70 6c 61 63 | 65 3a e1 0d 01 22 18 61 |ss%=plac|e:...".a|
|00000310| 64 64 72 65 73 73 25 3d | a0 28 61 64 64 72 65 73 |ddress%=|.(addres|
|00000320| 73 24 29 0d 01 2c 05 e1 | 0d 01 36 04 0d 01 40 1d |s$)..,..|..6...@.|
|00000330| dd f2 6d 61 69 6e 63 6f | 64 65 28 5a 25 2c 50 25 |..mainco|de(Z%,P%|
|00000340| 2c 4f 25 2c f8 20 4c 25 | 29 0d 01 4a 0b 5b 4f 50 |,O%,. L%|)..J.[OP|
|00000350| 54 20 5a 25 0d 01 54 05 | 3b 0d 01 5e 2e 3b 20 45 |T Z%..T.|;..^.; E|
|00000360| 6e 74 65 72 20 20 43 6f | 64 65 20 68 65 72 65 20 |nter Co|de here |
|00000370| 77 69 74 68 20 73 65 72 | 76 69 63 65 20 74 79 70 |with ser|vice typ|
|00000380| 65 20 69 6e 20 52 30 0d | 01 68 05 3b 0d 01 72 0a |e in R0.|.h.;..r.|
|00000390| 2e 65 6e 74 72 79 0d 01 | 7c 3e 42 20 72 65 67 74 |.entry..||>B regt|
|000003a0| 77 65 6c 76 65 69 6e 69 | 74 3b 20 20 20 20 20 20 |welveini|t; |
|000003b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 49 6e 69 | | Ini|
|000003c0| 74 69 61 6c 69 73 65 20 | 52 31 32 20 61 73 20 73 |tialise |R12 as s|
|000003d0| 74 61 63 6b 0d 01 86 4c | 45 51 55 53 22 20 43 6f |tack...L|EQUS" Co|
|000003e0| 64 65 20 46 6f 72 20 52 | 69 73 63 79 54 4e 43 20 |de For R|iscyTNC |
|000003f0| 56 20 30 2e 31 32 20 22 | 3b 20 20 50 75 74 20 61 |V 0.12 "|; Put a|
|00000400| 20 64 65 73 63 72 69 70 | 74 6f 72 20 61 74 20 74 | descrip|tor at t|
|00000410| 68 65 20 73 74 61 72 74 | 20 6f 66 20 63 6f 64 65 |he start| of code|
|00000420| 0d 01 90 09 41 4c 49 47 | 4e 0d 01 9a 05 3b 0d 01 |....ALIG|N....;..|
|00000430| a4 15 3b 20 4d 61 69 6e | 20 65 78 69 74 20 50 6f |..; Main| exit Po|
|00000440| 69 6e 74 0d 01 ae 15 3b | 3d 3d 3d 3d 3d 3d 3d 3d |int....;|========|
|00000450| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 01 b8 4b 2e 6d 61 73 |========|...K.mas|
|00000460| 74 65 72 65 78 69 74 3b | 20 20 20 20 20 20 20 20 |terexit;| |
|00000470| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 54 | | T|
|00000480| 68 65 20 77 61 79 20 6f | 75 74 2c 20 72 65 73 74 |he way o|ut, rest|
|00000490| 6f 72 69 6e 67 20 6f 75 | 72 20 72 65 67 69 73 74 |oring ou|r regist|
|000004a0| 65 72 73 0d 01 c2 23 4c | 44 4d 46 41 20 52 31 32 |ers...#L|DMFA R12|
|000004b0| 21 2c 7b 52 38 2d 52 31 | 34 7d 3a 4d 4f 56 20 52 |!,{R8-R1|4}:MOV R|
|000004c0| 31 35 2c 52 31 34 0d 01 | cc 05 3b 0d 01 d6 44 2e |15,R14..|..;...D.|
|000004d0| 72 65 67 74 77 65 6c 76 | 65 69 6e 69 74 65 64 20 |regtwelv|einited |
|000004e0| 3b 20 52 65 74 75 72 6e | 65 64 20 66 72 6f 6d 20 |; Return|ed from |
|000004f0| 69 6e 69 74 69 61 6c 69 | 73 69 6e 67 20 52 31 32 |initiali|sing R12|
|00000500| 20 61 73 20 6c 6f 63 61 | 6c 20 73 74 61 63 6b 0d | as loca|l stack.|
|00000510| 01 e0 17 53 54 4d 46 41 | 20 52 31 32 21 2c 7b 52 |...STMFA| R12!,{R|
|00000520| 38 2d 52 31 34 7d 0d 01 | ea 05 3b 0d 01 f4 19 3b |8-R14}..|..;....;|
|00000530| 20 44 65 63 6f 64 65 20 | 53 65 72 76 69 63 65 20 | Decode |Service |
|00000540| 43 61 6c 6c 0d 01 fe 19 | 3b 3d 3d 3d 3d 3d 3d 3d |Call....|;=======|
|00000550| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 02 08 |========|=====...|
|00000560| 05 3b 0d 02 12 3d 3b 20 | 43 61 6c 6c 73 20 69 6e |.;...=; |Calls in|
|00000570| 20 74 68 65 20 72 61 6e | 67 65 20 26 30 30 2d 26 | the ran|ge &00-&|
|00000580| 32 30 20 41 72 65 20 66 | 6f 72 20 6d 69 73 63 20 |20 Are f|or misc |
|00000590| 77 69 6d 70 20 6f 70 65 | 72 61 74 69 6f 6e 73 0d |wimp ope|rations.|
|000005a0| 02 1c 3e 3b 20 20 20 20 | 20 20 20 20 20 20 20 20 |..>; | |
|000005b0| 20 20 20 20 20 20 20 20 | 26 34 30 2d 26 39 30 20 | |&40-&90 |
|000005c0| 44 65 61 6c 20 77 69 74 | 68 20 52 69 73 63 79 74 |Deal wit|h Riscyt|
|000005d0| 6e 63 20 6f 70 65 72 61 | 74 69 6f 6e 73 0d 02 26 |nc opera|tions..&|
|000005e0| 05 3b 0d 02 30 47 43 4d | 50 20 52 30 2c 23 26 38 |.;..0GCM|P R0,#&8|
|000005f0| 30 3a 42 47 45 20 74 6e | 63 75 74 69 6c 73 3b 20 |0:BGE tn|cutils; |
|00000600| 20 20 20 20 20 20 20 20 | 20 47 6f 20 73 74 72 61 | | Go stra|
|00000610| 69 67 68 74 20 74 6f 20 | 74 68 65 20 54 4e 43 20 |ight to |the TNC |
|00000620| 75 74 69 6c 69 74 69 65 | 73 0d 02 3a 44 43 4d 50 |utilitie|s..:DCMP|
|00000630| 20 52 30 2c 23 26 34 30 | 3a 42 47 45 20 6d 69 73 | R0,#&40|:BGE mis|
|00000640| 63 75 74 69 6c 73 3b 20 | 20 20 20 20 20 20 20 20 |cutils; | |
|00000650| 47 6f 20 73 74 72 61 69 | 67 68 74 20 74 6f 20 74 |Go strai|ght to t|
|00000660| 68 65 20 6d 69 73 63 20 | 75 74 69 6c 73 0d 02 44 |he misc |utils..D|
|00000670| 38 43 4d 50 20 52 30 2c | 23 26 31 30 3a 42 47 54 |8CMP R0,|#&10:BGT|
|00000680| 20 61 64 64 65 72 72 3b | 20 20 20 20 20 20 20 20 | adderr;| |
|00000690| 20 20 20 20 4e 6f 20 67 | 6f 6f 64 2c 20 62 61 64 | No g|ood, bad|
|000006a0| 20 43 61 6c 6c 0d 02 4e | 05 3b 0d 02 58 05 3b 0d | Call..N|.;..X.;.|
|000006b0| 02 62 25 3b 20 44 65 63 | 6f 64 65 20 63 61 6c 6c |.b%; Dec|ode call|
|000006c0| 73 20 74 6f 20 77 69 6d | 70 20 6f 70 65 72 61 74 |s to wim|p operat|
|000006d0| 69 6f 6e 73 0d 02 6c 12 | 2e 77 69 6d 70 70 72 6f |ions..l.|.wimppro|
|000006e0| 67 75 74 69 6c 73 0d 02 | 76 29 43 4d 50 20 52 30 |gutils..|v)CMP R0|
|000006f0| 2c 23 26 46 3a 42 47 54 | 20 61 64 64 65 72 72 3a |,#&F:BGT| adderr:|
|00000700| 4d 4f 56 20 52 30 2c 52 | 30 2c 4c 53 4c 23 32 0d |MOV R0,R|0,LSL#2.|
|00000710| 02 80 3b 53 54 4d 46 41 | 20 31 32 21 2c 7b 52 31 |..;STMFA| 12!,{R1|
|00000720| 7d 3a 41 44 52 20 52 31 | 2c 77 75 3a 4c 44 52 20 |}:ADR R1|,wu:LDR |
|00000730| 52 30 2c 5b 52 31 2c 52 | 30 5d 3a 4c 44 4d 46 41 |R0,[R1,R|0]:LDMFA|
|00000740| 20 52 31 32 21 2c 7b 52 | 31 7d 0d 02 8a 1f 53 55 | R12!,{R|1}....SU|
|00000750| 42 20 52 30 2c 52 30 2c | 23 34 3a 41 44 44 20 52 |B R0,R0,|#4:ADD R|
|00000760| 31 35 2c 52 31 35 2c 52 | 30 0d 02 94 07 2e 77 75 |15,R15,R|0.....wu|
|00000770| 0d 02 9e 20 45 51 55 44 | 20 61 64 64 65 72 72 2d |... EQUD| adderr-|
|00000780| 77 75 3b 20 26 30 30 20 | 52 65 73 65 72 76 65 64 |wu; &00 |Reserved|
|00000790| 0d 02 a8 28 45 51 55 44 | 20 77 72 69 63 6f 6e 2d |...(EQUD| wricon-|
|000007a0| 77 75 3b 20 26 30 31 20 | 57 72 69 74 65 20 74 6f |wu; &01 |Write to|
|000007b0| 20 61 6e 20 69 63 6f 6e | 0d 02 b2 20 45 51 55 44 | an icon|... EQUD|
|000007c0| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 32 20 | adderr-|wu; &02 |
|000007d0| 52 65 73 65 72 76 65 64 | 0d 02 bc 20 45 51 55 44 |Reserved|... EQUD|
|000007e0| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 33 20 | adderr-|wu; &03 |
|000007f0| 52 65 73 65 72 76 65 64 | 0d 02 c6 20 45 51 55 44 |Reserved|... EQUD|
|00000800| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 34 20 | adderr-|wu; &04 |
|00000810| 52 65 73 65 72 76 65 64 | 0d 02 d0 20 45 51 55 44 |Reserved|... EQUD|
|00000820| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 35 20 | adderr-|wu; &05 |
|00000830| 52 65 73 65 72 76 65 64 | 0d 02 da 20 45 51 55 44 |Reserved|... EQUD|
|00000840| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 36 20 | adderr-|wu; &06 |
|00000850| 52 65 73 65 72 76 65 64 | 0d 02 e4 20 45 51 55 44 |Reserved|... EQUD|
|00000860| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 37 20 | adderr-|wu; &07 |
|00000870| 52 65 73 65 72 76 65 64 | 0d 02 ee 20 45 51 55 44 |Reserved|... EQUD|
|00000880| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 38 20 | adderr-|wu; &08 |
|00000890| 52 65 73 65 72 76 65 64 | 0d 02 f8 20 45 51 55 44 |Reserved|... EQUD|
|000008a0| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 39 20 | adderr-|wu; &09 |
|000008b0| 52 65 73 65 72 76 65 64 | 0d 03 02 04 0d 03 0c 14 |Reserved|........|
|000008c0| 3b 57 49 4d 50 20 4f 70 | 65 72 61 74 69 6f 6e 73 |;WIMP Op|erations|
|000008d0| 0d 03 16 14 3b 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |....;===|========|
|000008e0| 3d 3d 3d 3d 0d 03 20 13 | 3b 20 57 72 69 74 65 20 |====.. .|; Write |
|000008f0| 74 6f 20 49 63 6f 6e 0d | 03 2a 45 3b 20 53 65 72 |to Icon.|.*E; Ser|
|00000900| 76 69 63 65 20 26 30 31 | 2c 20 52 31 3d 77 69 6e |vice &01|, R1=win|
|00000910| 64 6f 77 20 68 61 6e 64 | 6c 65 2c 20 52 32 3d 69 |dow hand|le, R2=i|
|00000920| 63 6f 6e 20 68 61 6e 64 | 6c 65 2c 20 52 33 3d 53 |con hand|le, R3=S|
|00000930| 6f 75 72 63 65 20 73 74 | 72 69 6e 67 0d 03 34 05 |ource st|ring..4.|
|00000940| 3b 0d 03 3e 42 2e 77 72 | 69 63 6f 6e 3b 20 45 6e |;..>B.wr|icon; En|
|00000950| 74 72 79 20 70 6f 69 6e | 74 20 66 6f 72 20 77 72 |try poin|t for wr|
|00000960| 69 74 65 69 63 6f 6e 20 | 77 69 74 68 20 73 6f 75 |iteicon |with sou|
|00000970| 72 63 65 20 61 74 20 62 | 61 73 69 63 20 73 74 72 |rce at b|asic str|
|00000980| 69 6e 67 0d 03 48 2b 4c | 44 52 20 52 33 2c 73 74 |ing..H+L|DR R3,st|
|00000990| 72 69 6e 67 3a 42 4c 20 | 77 72 69 74 65 69 63 6f |ring:BL |writeico|
|000009a0| 6e 3a 42 20 6d 61 73 74 | 65 72 65 78 69 74 0d 03 |n:B mast|erexit..|
|000009b0| 52 05 3b 0d 03 5c 40 2e | 77 72 69 74 65 69 63 6f |R.;..\@.|writeico|
|000009c0| 6e 3b 77 69 6e 64 6f 77 | 20 68 61 6e 64 6c 65 20 |n;window| handle |
|000009d0| 69 6e 20 52 31 2c 69 63 | 6f 6e 68 61 6e 64 6c 65 |in R1,ic|onhandle|
|000009e0| 20 69 6e 20 52 32 2c 73 | 6f 75 72 63 65 20 69 6e | in R2,s|ource in|
|000009f0| 20 52 33 0d 03 66 35 4c | 44 52 20 52 35 2c 62 6c | R3..f5L|DR R5,bl|
|00000a00| 6f 63 6b 3a 53 54 52 20 | 52 31 2c 5b 52 35 5d 3a |ock:STR |R1,[R5]:|
|00000a10| 53 54 52 20 52 32 2c 5b | 52 35 2c 23 34 5d 3a 4d |STR R2,[|R5,#4]:M|
|00000a20| 4f 56 20 52 31 2c 52 35 | 0d 03 70 1b 53 57 49 20 |OV R1,R5|..p.SWI |
|00000a30| 22 57 69 6d 70 5f 47 65 | 74 49 63 6f 6e 53 74 61 |"Wimp_Ge|tIconSta|
|00000a40| 74 65 22 0d 03 7a 3c 4c | 44 52 20 52 35 2c 62 6c |te"..z<L|DR R5,bl|
|00000a50| 6f 63 6b 3a 42 49 43 20 | 52 36 2c 52 36 2c 52 36 |ock:BIC |R6,R6,R6|
|00000a60| 3a 53 54 52 20 52 36 2c | 5b 52 35 2c 23 38 5d 3a |:STR R6,|[R5,#8]:|
|00000a70| 53 54 52 20 52 36 2c 5b | 52 35 2c 23 31 32 5d 0d |STR R6,[|R5,#12].|
|00000a80| 03 84 28 4d 4f 56 20 52 | 31 2c 52 33 3a 4c 44 52 |..(MOV R|1,R3:LDR|
|00000a90| 20 52 32 2c 5b 52 35 2c | 23 32 38 5d 3a 4d 4f 56 | R2,[R5,|#28]:MOV|
|00000aa0| 20 52 33 2c 23 37 39 0d | 03 8e 35 53 54 4d 46 41 | R3,#79.|..5STMFA|
|00000ab0| 20 52 31 32 21 2c 7b 52 | 31 34 7d 3a 42 4c 20 73 | R12!,{R|14}:BL s|
|00000ac0| 68 69 66 74 6f 64 63 68 | 61 72 73 3a 4c 44 4d 46 |hiftodch|ars:LDMF|
|00000ad0| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 0d 03 98 34 |A R12!,{|R14}...4|
|00000ae0| 4c 44 52 20 52 31 2c 62 | 6c 6f 63 6b 3a 53 57 49 |LDR R1,b|lock:SWI|
|00000af0| 20 22 57 69 6d 70 5f 53 | 65 74 49 63 6f 6e 53 74 | "Wimp_S|etIconSt|
|00000b00| 61 74 65 22 3a 4d 4f 56 | 20 52 31 35 2c 52 31 34 |ate":MOV| R15,R14|
|00000b10| 0d 03 a2 05 3b 0d 03 ac | 1c 3b 20 44 65 63 6f 64 |....;...|.; Decod|
|00000b20| 65 20 6d 69 73 63 20 4f | 70 65 72 61 74 69 6f 6e |e misc O|peration|
|00000b30| 73 0d 03 b6 05 3b 0d 03 | c0 0e 2e 6d 69 73 63 75 |s....;..|...miscu|
|00000b40| 74 69 6c 73 0d 03 ca 39 | 43 4d 50 20 52 30 2c 23 |tils...9|CMP R0,#|
|00000b50| 26 35 32 3a 42 47 54 20 | 61 64 64 65 72 72 3a 53 |&52:BGT |adderr:S|
|00000b60| 55 42 20 52 30 2c 52 30 | 2c 23 26 34 30 3a 4d 4f |UB R0,R0|,#&40:MO|
|00000b70| 56 20 52 30 2c 52 30 2c | 4c 53 4c 23 32 0d 03 d4 |V R0,R0,|LSL#2...|
|00000b80| 3b 53 54 4d 46 41 20 31 | 32 21 2c 7b 52 31 7d 3a |;STMFA 1|2!,{R1}:|
|00000b90| 41 44 52 20 52 31 2c 74 | 61 3a 4c 44 52 20 52 30 |ADR R1,t|a:LDR R0|
|00000ba0| 2c 5b 52 31 2c 52 30 5d | 3a 4c 44 4d 46 41 20 52 |,[R1,R0]|:LDMFA R|
|00000bb0| 31 32 21 2c 7b 52 31 7d | 0d 03 de 1f 53 55 42 20 |12!,{R1}|....SUB |
|00000bc0| 52 30 2c 52 30 2c 23 34 | 3a 41 44 44 20 52 31 35 |R0,R0,#4|:ADD R15|
|00000bd0| 2c 52 31 35 2c 52 30 0d | 03 e8 07 2e 74 61 0d 03 |,R15,R0.|....ta..|
|00000be0| f2 37 45 51 55 44 20 72 | 65 74 76 65 72 2d 74 61 |.7EQUD r|etver-ta|
|00000bf0| 3b 20 26 34 30 20 52 65 | 70 6c 79 20 77 69 74 68 |; &40 Re|ply with|
|00000c00| 20 76 65 72 73 69 6f 6e | 20 6e 75 6d 62 65 72 20 | version| number |
|00000c10| 2a 20 31 30 30 0d 03 fc | 34 45 51 55 44 20 69 6e |* 100...|4EQUD in|
|00000c20| 69 74 73 74 2d 74 61 3b | 20 26 34 31 20 4e 6f 74 |itst-ta;| &41 Not|
|00000c30| 65 20 77 68 65 72 65 20 | 62 75 66 66 65 72 20 62 |e where |buffer b|
|00000c40| 6c 6f 63 6b 73 20 61 72 | 65 0d 04 06 3d 45 51 55 |locks ar|e...=EQU|
|00000c50| 44 20 70 6f 73 74 63 6f | 2d 74 61 3b 20 26 34 32 |D postco|-ta; &42|
|00000c60| 20 49 6e 66 6f 72 6d 20 | 63 6f 64 65 20 6f 66 20 | Inform |code of |
|00000c70| 63 6f 6e 66 69 67 20 74 | 79 70 65 20 70 61 72 61 |config t|ype para|
|00000c80| 6d 65 74 65 72 73 0d 04 | 10 25 45 51 55 44 20 73 |meters..|.%EQUD s|
|00000c90| 68 75 63 6f 6e 2d 74 61 | 3b 20 26 34 33 20 53 68 |hucon-ta|; &43 Sh|
|00000ca0| 75 66 66 6c 65 20 49 63 | 6f 6e 73 0d 04 1a 34 45 |uffle Ic|ons...4E|
|00000cb0| 51 55 44 20 61 64 64 65 | 72 72 2d 74 61 3b 20 26 |QUD adde|rr-ta; &|
|00000cc0| 34 34 20 53 65 72 69 61 | 6c 20 69 6e 70 75 74 3b |44 Seria|l input;|
|00000cd0| 20 4e 6f 20 6c 6f 6e 67 | 65 72 20 75 73 65 64 0d | No long|er used.|
|00000ce0| 04 24 3b 45 51 55 44 20 | 62 61 75 64 73 74 2d 74 |.$;EQUD |baudst-t|
|00000cf0| 61 3b 20 26 34 35 20 53 | 65 74 20 62 61 75 64 20 |a; &45 S|et baud |
|00000d00| 72 61 74 65 20 66 72 6f | 6d 20 72 65 61 6c 20 76 |rate fro|m real v|
|00000d10| 61 6c 75 65 20 69 6e 20 | 52 31 0d 04 2e 39 45 51 |alue in |R1...9EQ|
|00000d20| 55 44 20 62 61 75 64 64 | 65 2d 74 61 3b 20 26 34 |UD baudd|e-ta; &4|
|00000d30| 36 20 4d 61 6b 65 20 61 | 20 73 74 72 69 6e 67 20 |6 Make a| string |
|00000d40| 66 72 6f 6d 20 62 61 75 | 64 20 6e 6f 20 28 30 2d |from bau|d no (0-|
|00000d50| 31 35 29 0d 04 38 31 45 | 51 55 44 20 75 73 65 69 |15)..81E|QUD usei|
|00000d60| 6e 66 2d 74 61 3b 20 26 | 34 37 20 49 6e 66 6f 72 |nf-ta; &|47 Infor|
|00000d70| 6d 20 63 6f 64 65 20 6f | 66 20 69 6e 70 75 74 20 |m code o|f input |
|00000d80| 75 73 65 72 0d 04 42 32 | 45 51 55 44 20 73 68 75 |user..B2|EQUD shu|
|00000d90| 66 66 31 2d 74 61 3b 20 | 26 34 38 20 53 68 75 66 |ff1-ta; |&48 Shuf|
|00000da0| 66 6c 65 20 74 65 78 74 | 20 69 6e 20 74 65 78 74 |fle text| in text|
|00000db0| 20 73 74 6f 72 65 0d 04 | 4c 31 45 51 55 44 20 73 | store..|L1EQUD s|
|00000dc0| 74 72 64 72 31 2d 74 61 | 3b 20 26 34 39 20 52 65 |trdr1-ta|; &49 Re|
|00000dd0| 64 72 61 77 20 73 74 72 | 65 61 6d 20 77 69 6e 64 |draw str|eam wind|
|00000de0| 6f 77 20 74 65 78 74 0d | 04 56 2e 45 51 55 44 20 |ow text.|.V.EQUD |
|00000df0| 73 74 72 64 72 32 2d 74 | 61 3b 20 26 34 41 20 52 |strdr2-t|a; &4A R|
|00000e00| 65 73 65 72 76 65 64 20 | 66 6f 72 20 64 65 62 75 |eserved |for debu|
|00000e10| 67 67 69 6e 67 0d 04 60 | 3a 45 51 55 44 20 63 6c |gging..`|:EQUD cl|
|00000e20| 65 61 72 61 2d 74 61 3b | 20 26 34 42 20 43 6c 65 |eara-ta;| &4B Cle|
|00000e30| 61 72 20 61 6e 20 61 72 | 65 61 20 6f 66 20 6d 65 |ar an ar|ea of me|
|00000e40| 6d 6f 72 79 20 77 69 74 | 68 20 7a 65 72 6f 73 0d |mory wit|h zeros.|
|00000e50| 04 6a 33 45 51 55 44 20 | 73 65 6e 64 62 74 2d 74 |.j3EQUD |sendbt-t|
|00000e60| 61 3b 20 26 34 43 20 53 | 65 6e 64 20 62 79 74 65 |a; &4C S|end byte|
|00000e70| 73 20 66 72 6f 6d 20 66 | 69 6c 65 20 74 6f 20 54 |s from f|ile to T|
|00000e80| 4e 43 0d 04 74 39 45 51 | 55 44 20 73 65 6e 64 73 |NC..t9EQ|UD sends|
|00000e90| 74 2d 74 61 3b 20 26 34 | 44 20 53 65 6e 64 20 6e |t-ta; &4|D Send n|
|00000ea0| 65 61 74 20 43 52 20 74 | 65 72 6d 65 64 20 73 74 |eat CR t|ermed st|
|00000eb0| 72 69 6e 67 20 74 6f 20 | 54 4e 43 0d 04 7e 3d 45 |ring to |TNC..~=E|
|00000ec0| 51 55 44 20 73 65 6e 64 | 73 6d 2d 74 61 3b 20 26 |QUD send|sm-ta; &|
|00000ed0| 34 45 20 53 65 6e 64 20 | 6d 6f 64 69 66 69 65 64 |4E Send |modified|
|00000ee0| 20 43 52 20 74 65 72 6d | 65 64 20 73 74 72 69 6e | CR term|ed strin|
|00000ef0| 67 20 74 6f 20 54 4e 43 | 0d 04 88 3d 45 51 55 44 |g to TNC|...=EQUD|
|00000f00| 20 70 6f 73 74 63 6f 2d | 74 61 3b 20 26 34 46 20 | postco-|ta; &4F |
|00000f10| 49 6e 66 6f 72 6d 20 63 | 6f 64 65 20 6f 66 20 63 |Inform c|ode of c|
|00000f20| 6f 6e 66 69 67 20 74 79 | 70 65 20 70 61 72 61 6d |onfig ty|pe param|
|00000f30| 65 74 65 72 73 0d 04 92 | 40 45 51 55 44 20 63 68 |eters...|@EQUD ch|
|00000f40| 73 6e 62 74 2d 74 61 3b | 20 26 35 30 20 43 68 65 |snbt-ta;| &50 Che|
|00000f50| 63 6b 20 66 6f 72 20 73 | 74 72 65 61 6d 20 73 65 |ck for s|tream se|
|00000f60| 6e 64 69 6e 67 20 62 79 | 74 65 73 20 66 72 6f 6d |nding by|tes from|
|00000f70| 20 66 69 6c 65 0d 04 9c | 39 45 51 55 44 20 73 74 | file...|9EQUD st|
|00000f80| 6f 69 70 62 2d 74 61 3b | 20 26 35 31 20 49 6e 70 |oipb-ta;| &51 Inp|
|00000f90| 75 74 20 74 6f 20 74 65 | 6d 70 20 73 65 72 69 61 |ut to te|mp seria|
|00000fa0| 6c 20 69 6e 70 75 74 20 | 62 75 66 66 65 72 0d 04 |l input |buffer..|
|00000fb0| a6 40 45 51 55 44 20 63 | 68 61 72 64 69 2d 74 61 |.@EQUD c|hardi-ta|
|00000fc0| 3b 20 26 35 32 20 44 69 | 73 74 72 69 62 75 74 65 |; &52 Di|stribute|
|00000fd0| 20 74 65 6d 70 20 73 65 | 72 69 61 6c 20 62 75 66 | temp se|rial buf|
|00000fe0| 66 65 72 20 74 6f 20 6f | 75 74 70 75 74 73 0d 04 |fer to o|utputs..|
|00000ff0| b0 0d 2e 74 6e 63 75 74 | 69 6c 73 0d 04 ba 3c 54 |...tncut|ils...<T|
|00001000| 45 51 20 52 30 2c 23 26 | 38 36 3a 42 45 51 20 73 |EQ R0,#&|86:BEQ s|
|00001010| 65 6e 64 62 72 65 61 6b | 3b 20 20 20 53 65 6e 64 |endbreak|; Send|
|00001020| 20 62 72 65 61 6b 20 6c | 65 76 65 6c 20 74 6f 20 | break l|evel to |
|00001030| 74 68 65 20 54 4e 43 0d | 04 c4 3c 54 45 51 20 52 |the TNC.|..<TEQ R|
|00001040| 30 2c 23 26 38 38 3a 42 | 45 51 20 63 6c 6f 63 6b |0,#&88:B|EQ clock|
|00001050| 6c 6f 61 64 3b 20 20 20 | 4c 6f 61 64 20 74 68 65 |load; |Load the|
|00001060| 20 63 6c 6f 63 6b 20 69 | 6e 74 6f 20 74 68 65 20 | clock i|nto the |
|00001070| 54 4e 43 0d 04 ce 31 54 | 45 51 20 52 30 2c 23 26 |TNC...1T|EQ R0,#&|
|00001080| 38 39 3a 42 45 51 20 74 | 6e 63 74 79 70 65 3b 20 |89:BEQ t|nctype; |
|00001090| 20 20 20 20 53 65 74 20 | 74 68 65 20 54 4e 43 20 | Set |the TNC |
|000010a0| 74 79 70 65 0d 04 d8 3a | 54 45 51 20 52 30 2c 23 |type...:|TEQ R0,#|
|000010b0| 26 39 30 3a 42 45 51 20 | 73 70 72 69 74 65 6c 6f |&90:BEQ |spritelo|
|000010c0| 61 64 3b 4c 6f 61 64 20 | 73 70 72 69 74 65 73 20 |ad;Load |sprites |
|000010d0| 69 6e 74 6f 20 77 69 6d | 70 20 61 72 65 61 0d 04 |into wim|p area..|
|000010e0| e2 04 0d 04 ec 0b 2e 61 | 64 64 65 72 72 0d 04 f6 |.......a|dderr...|
|000010f0| 27 3b 6d 61 6b 65 20 65 | 72 72 6f 72 20 69 66 20 |';make e|rror if |
|00001100| 52 30 20 63 61 6e 27 74 | 20 62 65 20 73 65 72 76 |R0 can't| be serv|
|00001110| 69 63 65 64 0d 05 00 36 | 41 44 52 20 52 31 2c 63 |iced...6|ADR R1,c|
|00001120| 61 6c 6c 65 72 72 6f 72 | 3a 4d 4f 56 20 52 32 2c |allerror|:MOV R2,|
|00001130| 23 34 3a 53 57 49 22 4f | 53 5f 42 69 6e 61 72 79 |#4:SWI"O|S_Binary|
|00001140| 54 6f 44 65 63 69 6d 61 | 6c 22 0d 05 0a 30 41 44 |ToDecima|l"...0AD|
|00001150| 52 20 52 30 2c 63 61 6c | 6c 65 72 72 6f 72 3a 42 |R R0,cal|lerror:B|
|00001160| 4c 20 72 65 70 6f 72 74 | 65 72 72 6f 72 3a 42 20 |L report|error:B |
|00001170| 6d 61 73 74 65 72 65 78 | 69 74 0d 05 14 04 0d 05 |masterex|it......|
|00001180| 1e 50 2e 63 61 6c 6c 65 | 72 72 6f 72 3a 45 51 55 |.P.calle|rror:EQU|
|00001190| 44 20 30 3a 45 51 55 53 | 20 22 49 6e 74 65 72 6e |D 0:EQUS| "Intern|
|000011a0| 61 6c 20 45 72 72 6f 72 | 20 2d 20 43 6f 64 65 20 |al Error| - Code |
|000011b0| 63 61 6c 6c 20 20 20 20 | 20 20 6e 6f 74 20 73 75 |call | not su|
|000011c0| 70 70 6f 72 74 65 64 22 | 3a 45 51 55 42 30 0d 05 |pported"|:EQUB0..|
|000011d0| 28 09 41 4c 49 47 4e 0d | 05 32 05 3b 0d 05 3c 16 |(.ALIGN.|.2.;..<.|
|000011e0| 3b 20 53 65 74 20 55 70 | 20 56 61 72 69 61 62 6c |; Set Up| Variabl|
|000011f0| 65 73 0d 05 46 16 3b 3d | 3d 3d 3d 3d 3d 3d 3d 3d |es..F.;=|========|
|00001200| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 05 50 05 3b 0d 05 5a |========|..P.;..Z|
|00001210| 14 3b 46 6c 61 67 73 20 | 6c 69 76 65 20 68 65 72 |.;Flags |live her|
|00001220| 65 0d 05 64 41 2e 62 61 | 73 66 6c 61 67 3a 45 51 |e..dA.ba|sflag:EQ|
|00001230| 55 42 20 30 3a 2e 69 70 | 75 73 65 72 3a 45 51 55 |UB 0:.ip|user:EQU|
|00001240| 42 30 3a 2e 74 6e 63 6e | 75 6d 62 3a 45 51 55 42 |B0:.tncn|umb:EQUB|
|00001250| 20 30 3a 2e 76 65 72 73 | 69 6f 6e 3a 45 51 55 42 | 0:.vers|ion:EQUB|
|00001260| 31 32 0d 05 6e 35 2e 6c | 74 78 3a 45 51 55 42 30 |12..n5.l|tx:EQUB0|
|00001270| 3a 2e 6c 72 78 3a 45 51 | 55 42 30 3a 2e 73 74 6d |:.lrx:EQ|UB0:.stm|
|00001280| 3a 45 51 55 42 20 30 3a | 41 4c 49 47 4e 3a 2e 74 |:EQUB 0:|ALIGN:.t|
|00001290| 73 3a 45 51 55 44 30 0d | 05 78 44 2e 62 6c 6f 63 |s:EQUD0.|.xD.bloc|
|000012a0| 6b 3a 45 51 55 44 20 30 | 3a 2e 62 75 66 66 65 72 |k:EQUD 0|:.buffer|
|000012b0| 62 61 73 65 3a 45 51 55 | 44 20 30 3a 2e 66 6c 61 |base:EQU|D 0:.fla|
|000012c0| 67 62 61 73 65 3a 45 51 | 55 44 20 30 3a 2e 73 74 |gbase:EQ|UD 0:.st|
|000012d0| 72 69 6e 67 3a 45 51 55 | 44 20 30 0d 05 82 35 2e |ring:EQU|D 0...5.|
|000012e0| 62 75 66 70 6f 73 6e 3a | 45 51 55 44 20 30 3a 2e |bufposn:|EQUD 0:.|
|000012f0| 74 65 78 74 62 61 73 65 | 3a 45 51 55 44 20 30 3a |textbase|:EQUD 0:|
|00001300| 2e 74 65 72 6d 6c 69 6e | 65 3a 45 51 55 44 20 30 |.termlin|e:EQUD 0|
|00001310| 0d 05 8c 3b 2e 6c 69 6e | 65 6c 65 6e 3a 45 51 55 |...;.lin|elen:EQU|
|00001320| 44 30 3a 2e 62 6c 62 3a | 45 51 55 44 20 30 3a 2e |D0:.blb:|EQUD 0:.|
|00001330| 73 73 6c 3a 45 51 55 44 | 20 30 3a 2e 69 70 62 75 |ssl:EQUD| 0:.ipbu|
|00001340| 66 66 65 72 3a 45 51 55 | 44 20 30 0d 05 96 40 2e |ffer:EQU|D 0...@.|
|00001350| 69 70 69 6e 3a 45 51 55 | 44 20 30 3a 2e 69 70 6f |ipin:EQU|D 0:.ipo|
|00001360| 75 74 3a 45 51 55 44 20 | 30 3a 2e 69 70 73 77 66 |ut:EQUD |0:.ipswf|
|00001370| 6c 3a 45 51 55 44 20 30 | 3a 2e 73 77 69 74 63 68 |l:EQUD 0|:.switch|
|00001380| 62 61 73 65 3a 45 51 55 | 44 20 30 0d 05 97 22 3b |base:EQU|D 0...";|
|00001390| 20 2a 20 69 70 73 77 66 | 6c 20 74 6f 20 31 20 66 | * ipswf|l to 1 f|
|000013a0| 6f 72 20 6d 75 6c 74 73 | 74 72 65 61 6d 0d 05 a0 |or mults|tream...|
|000013b0| 09 41 4c 49 47 4e 0d 05 | aa 3a 2e 72 65 74 76 65 |.ALIGN..|.:.retve|
|000013c0| 72 3b 20 72 65 74 75 72 | 6e 20 63 6f 64 65 20 76 |r; retur|n code v|
|000013d0| 65 72 73 69 6f 6e 20 69 | 6e 20 76 61 72 69 61 62 |ersion i|n variab|
|000013e0| 6c 65 20 66 6f 6c 6c 77 | 69 6e 67 20 63 6f 64 65 |le follw|ing code|
|000013f0| 0d 05 b4 20 42 49 43 20 | 52 31 2c 52 31 2c 52 31 |... BIC |R1,R1,R1|
|00001400| 3a 4c 44 52 42 20 52 31 | 2c 76 65 72 73 69 6f 6e |:LDRB R1|,version|
|00001410| 0d 05 be 27 42 49 43 20 | 52 30 2c 52 30 2c 52 30 |...'BIC |R0,R0,R0|
|00001420| 3a 42 4c 20 62 61 73 69 | 6e 74 3a 53 54 52 42 20 |:BL basi|nt:STRB |
|00001430| 52 31 2c 5b 52 30 5d 0d | 05 c8 10 42 20 6d 61 73 |R1,[R0].|...B mas|
|00001440| 74 65 72 65 78 69 74 0d | 05 d2 04 0d 05 dc 29 2e |terexit.|......).|
|00001450| 69 6e 69 74 73 74 3b 20 | 69 6e 69 74 69 61 6c 69 |initst; |initiali|
|00001460| 73 65 20 76 61 72 69 61 | 62 6c 65 73 20 69 6e 20 |se varia|bles in |
|00001470| 63 6f 64 65 0d 05 e6 10 | 53 54 52 20 52 31 2c 62 |code....|STR R1,b|
|00001480| 6c 6f 63 6b 0d 05 f0 0d | 4d 4f 56 20 52 35 2c 52 |lock....|MOV R5,R|
|00001490| 31 0d 05 fa 24 4c 44 52 | 20 52 30 2c 5b 52 35 2c |1...$LDR| R0,[R5,|
|000014a0| 23 30 5d 3a 53 54 52 20 | 52 30 2c 62 75 66 66 65 |#0]:STR |R0,buffe|
|000014b0| 72 62 61 73 65 0d 06 04 | 22 4c 44 52 20 52 30 2c |rbase...|"LDR R0,|
|000014c0| 5b 52 35 2c 23 34 5d 3a | 53 54 52 20 52 30 2c 66 |[R5,#4]:|STR R0,f|
|000014d0| 6c 61 67 62 61 73 65 0d | 06 0e 20 4c 44 52 20 52 |lagbase.|.. LDR R|
|000014e0| 30 2c 5b 52 35 2c 23 38 | 5d 3a 53 54 52 20 52 30 |0,[R5,#8|]:STR R0|
|000014f0| 2c 73 74 72 69 6e 67 0d | 06 18 23 4c 44 52 20 52 |,string.|..#LDR R|
|00001500| 30 2c 5b 52 35 2c 23 31 | 32 5d 3a 53 54 52 20 52 |0,[R5,#1|2]:STR R|
|00001510| 30 2c 74 65 78 74 62 61 | 73 65 0d 06 22 23 4c 44 |0,textba|se.."#LD|
|00001520| 52 20 52 30 2c 5b 52 35 | 2c 23 31 36 5d 3a 53 54 |R R0,[R5|,#16]:ST|
|00001530| 52 20 52 30 2c 74 65 72 | 6d 6c 69 6e 65 0d 06 2c |R R0,ter|mline..,|
|00001540| 22 4c 44 52 20 52 30 2c | 5b 52 35 2c 23 32 30 5d |"LDR R0,|[R5,#20]|
|00001550| 3a 53 54 52 20 52 30 2c | 6c 69 6e 65 6c 65 6e 0d |:STR R0,|linelen.|
|00001560| 06 36 23 4c 44 52 20 52 | 30 2c 5b 52 35 2c 23 32 |.6#LDR R|0,[R5,#2|
|00001570| 34 5d 3a 53 54 52 20 52 | 30 2c 69 70 62 75 66 66 |4]:STR R|0,ipbuff|
|00001580| 65 72 0d 06 40 2c 4c 44 | 52 20 52 30 2c 5b 52 35 |er..@,LD|R R0,[R5|
|00001590| 2c 23 32 38 5d 3a 80 20 | 52 30 2c 52 30 2c 23 26 |,#28]:. |R0,R0,#&|
|000015a0| 46 46 3a 53 54 52 42 20 | 52 30 2c 73 74 6d 0d 06 |FF:STRB |R0,stm..|
|000015b0| 4a 25 4c 44 52 20 52 30 | 2c 5b 52 35 2c 23 33 32 |J%LDR R0|,[R5,#32|
|000015c0| 5d 3a 53 54 52 20 52 30 | 2c 73 77 69 74 63 68 62 |]:STR R0|,switchb|
|000015d0| 61 73 65 0d 06 54 11 2e | 66 69 6c 6c 66 6c 61 67 |ase..T..|fillflag|
|000015e0| 62 61 73 65 0d 06 5e 5c | 42 49 43 20 52 30 2c 52 |base..^\|BIC R0,R|
|000015f0| 30 2c 52 30 3a 4d 4f 56 | 20 52 30 2c 23 26 32 30 |0,R0:MOV| R0,#&20|
|00001600| 30 3a 4c 44 52 20 52 31 | 2c 66 6c 61 67 62 61 73 |0:LDR R1|,flagbas|
|00001610| 65 3a 53 54 4d 46 41 20 | 52 31 32 21 2c 7b 52 31 |e:STMFA |R12!,{R1|
|00001620| 34 7d 3a 42 4c 20 63 6c | 65 61 72 62 61 73 65 3a |4}:BL cl|earbase:|
|00001630| 4c 44 4d 46 41 20 52 31 | 32 21 2c 7b 52 31 34 7d |LDMFA R1|2!,{R14}|
|00001640| 0d 06 68 10 42 20 6d 61 | 73 74 65 72 65 78 69 74 |..h.B ma|sterexit|
|00001650| 0d 06 72 04 0d 06 7c 45 | 2e 70 6f 73 74 63 6f 3b |..r...|E|.postco;|
|00001660| 20 20 49 6e 69 74 69 61 | 6c 69 73 65 20 54 4e 43 | Initia|lise TNC|
|00001670| 20 61 6e 64 20 63 6f 6e | 66 69 67 20 73 70 65 63 | and con|fig spec|
|00001680| 69 66 69 63 20 70 61 72 | 61 6d 65 74 65 72 73 20 |ific par|ameters |
|00001690| 69 6e 74 6f 20 63 6f 64 | 65 0d 06 86 10 4c 44 52 |into cod|e....LDR|
|000016a0| 20 52 35 2c 62 6c 6f 63 | 6b 0d 06 90 1d 4c 44 52 | R5,bloc|k....LDR|
|000016b0| 20 52 30 2c 5b 52 35 2c | 23 30 5d 3a 53 54 52 20 | R0,[R5,|#0]:STR |
|000016c0| 52 30 2c 62 6c 62 0d 06 | 9a 1d 4c 44 52 20 52 30 |R0,blb..|..LDR R0|
|000016d0| 2c 5b 52 35 2c 23 34 5d | 3a 53 54 52 20 52 30 2c |,[R5,#4]|:STR R0,|
|000016e0| 73 73 6c 0d 06 a4 10 42 | 20 6d 61 73 74 65 72 65 |ssl....B| mastere|
|000016f0| 78 69 74 0d 06 ae 04 0d | 06 b8 49 2e 62 61 73 69 |xit.....|..I.basi|
|00001700| 6e 74 3b 20 4c 6f 61 64 | 20 69 6e 74 20 76 61 72 |nt; Load| int var|
|00001710| 69 61 62 6c 65 20 61 64 | 64 72 65 73 73 20 69 6e |iable ad|dress in|
|00001720| 74 6f 20 52 30 3b 20 45 | 6e 74 65 72 65 64 20 77 |to R0; E|ntered w|
|00001730| 69 74 68 20 6f 66 66 73 | 65 74 20 69 6e 20 52 30 |ith offs|et in R0|
|00001740| 0d 06 c2 16 53 54 4d 46 | 41 20 52 31 32 21 2c 7b |....STMF|A R12!,{|
|00001750| 52 31 2c 52 32 7d 0d 06 | cc 22 4d 4f 56 20 52 30 |R1,R2}..|."MOV R0|
|00001760| 2c 52 30 2c 4c 53 4c 23 | 31 3a 4c 44 52 20 52 30 |,R0,LSL#|1:LDR R0|
|00001770| 2c 5b 52 39 2c 52 30 5d | 0d 06 d6 13 4c 44 52 42 |,[R9,R0]|....LDRB|
|00001780| 20 52 32 2c 5b 52 30 2c | 23 33 5d 0d 06 e0 25 4c | R2,[R0,|#3]...%L|
|00001790| 44 52 42 20 52 31 2c 5b | 52 30 2c 23 32 5d 3a 84 |DRB R1,[|R0,#2]:.|
|000017a0| 52 20 52 32 2c 52 31 2c | 52 32 2c 4c 53 4c 23 38 |R R2,R1,|R2,LSL#8|
|000017b0| 0d 06 ea 25 4c 44 52 42 | 20 52 31 2c 5b 52 30 2c |...%LDRB| R1,[R0,|
|000017c0| 23 31 5d 3a 84 52 20 52 | 32 2c 52 31 2c 52 32 2c |#1]:.R R|2,R1,R2,|
|000017d0| 4c 53 4c 23 38 0d 06 f4 | 25 4c 44 52 42 20 52 31 |LSL#8...|%LDRB R1|
|000017e0| 2c 5b 52 30 2c 23 30 5d | 3a 84 52 20 52 32 2c 52 |,[R0,#0]|:.R R2,R|
|000017f0| 31 2c 52 32 2c 4c 53 4c | 23 38 0d 06 fe 22 4c 44 |1,R2,LSL|#8..."LD|
|00001800| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 2c 52 32 7d |MFA R12!|,{R1,R2}|
|00001810| 3a 4d 4f 56 20 52 31 35 | 2c 52 31 34 0d 07 08 04 |:MOV R15|,R14....|
|00001820| 0d 07 12 0e 2e 63 6c 65 | 61 72 62 61 73 65 0d 07 |.....cle|arbase..|
|00001830| 1c 16 53 54 4d 46 41 20 | 52 31 32 21 2c 7b 52 30 |..STMFA |R12!,{R0|
|00001840| 2d 52 33 7d 0d 07 26 27 | 4d 4f 56 20 52 32 2c 52 |-R3}..&'|MOV R2,R|
|00001850| 30 3a 42 49 43 20 52 30 | 2c 52 30 2c 52 30 3a 42 |0:BIC R0|,R0,R0:B|
|00001860| 49 43 20 52 33 2c 52 33 | 2c 52 33 0d 07 30 11 2e |IC R3,R3|,R3..0..|
|00001870| 74 6f 70 63 6c 65 61 72 | 62 61 73 65 0d 07 3a 3a |topclear|base..::|
|00001880| 53 54 52 20 52 30 2c 5b | 52 31 2c 52 33 5d 3a 41 |STR R0,[|R1,R3]:A|
|00001890| 44 44 20 52 33 2c 52 33 | 2c 23 34 3a 43 4d 50 20 |DD R3,R3|,#4:CMP |
|000018a0| 52 33 2c 52 32 3a 42 4c | 54 20 74 6f 70 63 6c 65 |R3,R2:BL|T topcle|
|000018b0| 61 72 62 61 73 65 0d 07 | 44 22 4c 44 4d 46 41 20 |arbase..|D"LDMFA |
|000018c0| 52 31 32 21 2c 7b 52 30 | 2d 52 33 7d 3a 4d 4f 56 |R12!,{R0|-R3}:MOV|
|000018d0| 20 52 31 35 2c 52 31 34 | 0d 07 4e 04 0d 07 58 23 | R15,R14|..N...X#|
|000018e0| 2e 63 6c 65 61 72 61 3a | 42 4c 20 63 6c 65 61 72 |.cleara:|BL clear|
|000018f0| 65 72 3a 42 20 6d 61 73 | 74 65 72 65 78 69 74 0d |er:B mas|terexit.|
|00001900| 07 62 04 0d 07 6c 0c 2e | 63 6c 65 61 72 65 72 0d |.b...l..|clearer.|
|00001910| 07 76 30 3b 20 50 75 74 | 73 20 76 61 6c 75 65 73 |.v0; Put|s values|
|00001920| 20 6f 66 20 7a 65 72 6f | 20 69 6e 74 6f 20 61 6e | of zero| into an|
|00001930| 20 61 72 65 61 20 6f 66 | 20 6d 65 6d 6f 72 79 0d | area of| memory.|
|00001940| 07 80 32 3b 20 45 6e 74 | 65 72 20 77 69 74 68 20 |..2; Ent|er with |
|00001950| 73 74 61 72 74 20 6f 66 | 20 61 72 65 61 20 69 6e |start of| area in|
|00001960| 20 52 31 2c 20 4c 65 6e | 67 74 68 20 69 6e 20 52 | R1, Len|gth in R|
|00001970| 32 0d 07 8a 1d 42 49 43 | 20 52 33 2c 52 33 2c 52 |2....BIC| R3,R3,R|
|00001980| 33 3a 42 49 43 20 52 30 | 2c 52 30 2c 52 30 0d 07 |3:BIC R0|,R0,R0..|
|00001990| 94 0f 2e 74 6f 70 63 6c | 65 61 72 65 72 0d 07 9e |...topcl|earer...|
|000019a0| 39 53 54 52 42 20 52 30 | 2c 5b 52 31 2c 52 33 5d |9STRB R0|,[R1,R3]|
|000019b0| 3a 41 44 44 20 52 33 2c | 52 33 2c 23 31 3a 43 4d |:ADD R3,|R3,#1:CM|
|000019c0| 50 20 52 33 2c 52 32 3a | 42 4c 54 20 74 6f 70 63 |P R3,R2:|BLT topc|
|000019d0| 6c 65 61 72 65 72 0d 07 | a8 0f 4d 4f 56 20 52 31 |learer..|..MOV R1|
|000019e0| 35 2c 52 31 34 0d 07 b2 | 04 0d 07 bc 04 0d 07 c6 |5,R14...|........|
|000019f0| 44 2e 73 68 75 63 6f 6e | 3b 53 68 75 66 66 6c 65 |D.shucon|;Shuffle|
|00001a00| 20 69 63 6f 6e 73 2c 20 | 57 69 6e 64 6f 77 20 68 | icons, |Window h|
|00001a10| 61 6e 64 6c 65 20 69 6e | 20 52 31 2c 20 6d 69 6e |andle in| R1, min|
|00001a20| 20 69 63 6f 6e 6f 20 52 | 32 2c 20 6d 61 78 20 52 | icono R|2, max R|
|00001a30| 33 0d 07 d0 1c 42 4c 20 | 73 68 75 69 63 6f 6e 73 |3....BL |shuicons|
|00001a40| 3a 42 20 6d 61 73 74 65 | 72 65 78 69 74 0d 07 da |:B maste|rexit...|
|00001a50| 04 0d 07 e4 3d 2e 62 61 | 75 64 73 74 3b 20 53 65 |....=.ba|udst; Se|
|00001a60| 74 20 74 68 65 20 73 65 | 72 69 61 6c 20 62 61 75 |t the se|rial bau|
|00001a70| 64 20 72 61 74 65 20 66 | 72 6f 6d 20 61 20 72 65 |d rate f|rom a re|
|00001a80| 61 6c 20 76 61 6c 75 65 | 20 69 6e 20 52 31 0d 07 |al value| in R1..|
|00001a90| ee 1b 42 4c 20 73 65 74 | 62 61 75 64 3a 42 20 6d |..BL set|baud:B m|
|00001aa0| 61 73 74 65 72 65 78 69 | 74 0d 07 f8 04 0d 08 02 |asterexi|t.......|
|00001ab0| 4a 2e 62 61 75 64 64 65 | 3b 20 62 61 75 64 20 72 |J.baudde|; baud r|
|00001ac0| 61 74 65 20 6e 75 6d 62 | 65 72 20 28 30 2d 31 35 |ate numb|er (0-15|
|00001ad0| 29 20 49 4e 20 52 31 2c | 20 70 6f 69 6e 74 20 74 |) IN R1,| point t|
|00001ae0| 6f 20 24 20 66 6f 72 20 | 72 65 73 75 6c 74 20 28 |o $ for |result (|
|00001af0| 39 36 30 30 29 52 32 0d | 08 0c 1c 42 4c 20 64 65 |9600)R2.|...BL de|
|00001b00| 73 63 62 61 75 64 3a 42 | 20 6d 61 73 74 65 72 65 |scbaud:B| mastere|
|00001b10| 78 69 74 0d 08 16 04 0d | 08 20 46 2e 73 68 75 69 |xit.....|. F.shui|
|00001b20| 63 6f 6e 73 3b 53 68 75 | 66 66 6c 65 20 69 63 6f |cons;Shu|ffle ico|
|00001b30| 6e 73 2c 20 57 69 6e 64 | 6f 77 20 68 61 6e 64 6c |ns, Wind|ow handl|
|00001b40| 65 20 69 6e 20 52 31 2c | 20 6d 69 6e 20 69 63 6f |e in R1,| min ico|
|00001b50| 6e 6f 20 52 32 2c 20 6d | 61 78 20 52 33 0d 08 2a |no R2, m|ax R3..*|
|00001b60| 10 4c 44 52 20 52 35 2c | 62 6c 6f 63 6b 0d 08 34 |.LDR R5,|block..4|
|00001b70| 10 2e 74 6f 70 73 68 75 | 69 63 6f 6e 73 0d 08 3e |..topshu|icons..>|
|00001b80| 35 41 44 44 20 52 34 2c | 52 32 2c 23 31 3a 4d 4f |5ADD R4,|R2,#1:MO|
|00001b90| 56 20 52 36 2c 52 31 3a | 53 54 52 20 52 31 2c 5b |V R6,R1:|STR R1,[|
|00001ba0| 52 35 5d 3a 53 54 52 20 | 52 34 2c 5b 52 35 2c 23 |R5]:STR |R4,[R5,#|
|00001bb0| 34 5d 0d 08 48 3d 53 54 | 4d 46 41 20 52 31 32 21 |4]..H=ST|MFA R12!|
|00001bc0| 2c 7b 52 30 2d 52 31 31 | 2c 52 31 34 7d 3a 4d 4f |,{R0-R11|,R14}:MO|
|00001bd0| 56 20 52 31 2c 52 35 3a | 53 57 49 20 22 57 69 6d |V R1,R5:|SWI "Wim|
|00001be0| 70 5f 47 65 74 49 63 6f | 6e 53 74 61 74 65 22 0d |p_GetIco|nState".|
|00001bf0| 08 52 42 4d 4f 56 20 52 | 31 2c 52 36 3a 4c 44 52 |.RBMOV R|1,R6:LDR|
|00001c00| 20 52 33 2c 5b 52 35 2c | 23 32 38 5d 3a 42 4c 20 | R3,[R5,|#28]:BL |
|00001c10| 77 72 69 74 65 69 63 6f | 6e 3a 4c 44 4d 46 41 20 |writeico|n:LDMFA |
|00001c20| 52 31 32 21 2c 7b 52 30 | 2d 52 31 31 2c 52 31 34 |R12!,{R0|-R11,R14|
|00001c30| 7d 0d 08 5c 33 43 4d 50 | 20 52 32 2c 52 33 3a ec |}..\3CMP| R2,R3:.|
|00001c40| 51 20 52 31 35 2c 52 31 | 34 3a 41 44 44 20 52 32 |Q R15,R1|4:ADD R2|
|00001c50| 2c 52 32 2c 23 31 3a 42 | 20 74 6f 70 73 68 75 69 |,R2,#1:B| topshui|
|00001c60| 63 6f 6e 73 0d 08 66 04 | 0d 08 70 42 2e 73 68 69 |cons..f.|..pB.shi|
|00001c70| 66 74 6f 64 63 68 61 72 | 73 3b 4d 6f 76 65 20 43 |ftodchar|s;Move C|
|00001c80| 52 20 74 65 72 6d 65 64 | 20 24 20 46 72 6f 6d 20 |R termed| $ From |
|00001c90| 69 6e 20 31 20 2c 20 74 | 6f 20 69 6e 20 32 2c 20 |in 1 , t|o in 2, |
|00001ca0| 6c 69 6d 69 74 20 69 6e | 20 33 0d 08 7a 1d 42 49 |limit in| 3..z.BI|
|00001cb0| 43 20 52 34 2c 52 34 2c | 52 34 3a 42 49 43 20 52 |C R4,R4,|R4:BIC R|
|00001cc0| 30 2c 52 30 2c 52 30 0d | 08 84 0d 2e 74 6f 70 73 |0,R0,R0.|....tops|
|00001cd0| 68 69 66 74 0d 08 8e 23 | 4c 44 52 42 20 52 30 2c |hift...#|LDRB R0,|
|00001ce0| 5b 52 31 2c 52 34 5d 3a | 53 54 52 42 20 52 30 2c |[R1,R4]:|STRB R0,|
|00001cf0| 5b 52 32 2c 52 34 5d 0d | 08 98 4d 43 4d 50 20 52 |[R2,R4].|..MCMP R|
|00001d00| 34 2c 52 33 3a 4d 4f 56 | 47 45 20 52 31 35 2c 52 |4,R3:MOV|GE R15,R|
|00001d10| 31 34 3a 41 44 44 20 52 | 34 2c 52 34 2c 23 31 3a |14:ADD R|4,R4,#1:|
|00001d20| 43 4d 50 20 52 30 2c 23 | 26 30 44 3a 42 4e 45 20 |CMP R0,#|&0D:BNE |
|00001d30| 74 6f 70 73 68 69 66 74 | 3a 4d 4f 56 20 52 31 35 |topshift|:MOV R15|
|00001d40| 2c 52 31 34 0d 08 a2 04 | 0d 08 ac 44 2e 73 68 69 |,R14....|...D.shi|
|00001d50| 66 74 63 68 61 72 73 3b | 20 20 4d 6f 76 65 20 62 |ftchars;| Move b|
|00001d60| 79 74 65 73 2e 20 52 31 | 3d 20 53 6f 75 72 63 65 |ytes. R1|= Source|
|00001d70| 2c 20 52 32 3d 20 44 65 | 73 74 69 6e 61 74 69 6f |, R2= De|stinatio|
|00001d80| 6e 2c 20 52 33 3d 4c 65 | 6e 67 74 68 0d 08 b6 16 |n, R3=Le|ngth....|
|00001d90| 53 54 4d 46 41 20 52 31 | 32 21 2c 7b 52 30 2d 52 |STMFA R1|2!,{R0-R|
|00001da0| 34 7d 0d 08 c0 2b 42 49 | 43 20 52 34 2c 52 34 2c |4}...+BI|C R4,R4,|
|00001db0| 52 34 3a 42 49 43 20 52 | 30 2c 52 30 2c 52 30 3a |R4:BIC R|0,R0,R0:|
|00001dc0| 53 55 42 53 20 52 33 2c | 52 33 2c 23 34 0d 08 ca |SUBS R3,|R3,#4...|
|00001dd0| 13 2e 6d 74 6f 70 73 68 | 69 66 74 63 68 61 72 73 |..mtopsh|iftchars|
|00001de0| 0d 08 d4 3d 43 4d 50 20 | 52 34 2c 52 33 3a 42 47 |...=CMP |R4,R3:BG|
|00001df0| 54 20 74 6f 70 73 68 69 | 66 74 63 68 61 72 73 3a |T topshi|ftchars:|
|00001e00| 4c 44 52 20 52 30 2c 5b | 52 31 2c 52 34 5d 3a 53 |LDR R0,[|R1,R4]:S|
|00001e10| 54 52 20 52 30 2c 5b 52 | 32 2c 52 34 5d 0d 08 de |TR R0,[R|2,R4]...|
|00001e20| 21 41 44 44 20 52 34 2c | 52 34 2c 23 34 3a 42 20 |!ADD R4,|R4,#4:B |
|00001e30| 6d 74 6f 70 73 68 69 66 | 74 63 68 61 72 73 0d 08 |mtopshif|tchars..|
|00001e40| e8 12 2e 74 6f 70 73 68 | 69 66 74 63 68 61 72 73 |...topsh|iftchars|
|00001e50| 0d 08 f2 11 41 44 44 53 | 20 52 33 2c 52 33 2c 23 |....ADDS| R3,R3,#|
|00001e60| 34 0d 08 fc 23 4c 44 52 | 42 20 52 30 2c 5b 52 31 |4...#LDR|B R0,[R1|
|00001e70| 2c 52 34 5d 3a 53 54 52 | 42 20 52 30 2c 5b 52 32 |,R4]:STR|B R0,[R2|
|00001e80| 2c 52 34 5d 0d 09 06 2c | 41 44 44 20 52 34 2c 52 |,R4]...,|ADD R4,R|
|00001e90| 34 2c 23 31 3a 43 4d 50 | 20 52 34 2c 52 33 3a 42 |4,#1:CMP| R4,R3:B|
|00001ea0| 4c 54 20 74 6f 70 73 68 | 69 66 74 63 68 61 72 73 |LT topsh|iftchars|
|00001eb0| 0d 09 10 22 4c 44 4d 46 | 41 20 52 31 32 21 2c 7b |..."LDMF|A R12!,{|
|00001ec0| 52 30 2d 52 34 7d 3a 4d | 4f 56 20 52 31 35 2c 52 |R0-R4}:M|OV R15,R|
|00001ed0| 31 34 0d 09 1a 04 0d 09 | 24 04 0d 09 2e 1a 3b 20 |14......|$.....; |
|00001ee0| 53 65 72 69 61 6c 20 70 | 6f 72 74 20 72 6f 75 74 |Serial p|ort rout|
|00001ef0| 69 6e 65 73 0d 09 38 1a | 3b 20 3d 3d 3d 3d 3d 3d |ines..8.|; ======|
|00001f00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 09 |========|======..|
|00001f10| 42 04 0d 09 4c 1e 2e 73 | 65 74 62 61 75 64 3b 20 |B...L..s|etbaud; |
|00001f20| 52 65 61 6c 20 76 61 6c | 75 65 20 69 6e 20 52 31 |Real val|ue in R1|
|00001f30| 0d 09 56 2b 4d 4f 56 20 | 52 32 2c 23 26 30 3a 41 |..V+MOV |R2,#&0:A|
|00001f40| 44 52 20 52 33 2c 73 65 | 72 74 61 62 6c 65 3a 42 |DR R3,se|rtable:B|
|00001f50| 49 43 20 52 34 2c 52 34 | 2c 52 34 0d 09 60 3e 2e |IC R4,R4|,R4..`>.|
|00001f60| 74 6f 70 62 61 75 64 3a | 4c 44 52 20 52 32 2c 5b |topbaud:|LDR R2,[|
|00001f70| 52 33 2c 52 34 5d 3a 54 | 45 51 20 52 31 2c 52 32 |R3,R4]:T|EQ R1,R2|
|00001f80| 3a 42 45 51 20 6f 75 74 | 62 61 75 64 3a 41 44 44 |:BEQ out|baud:ADD|
|00001f90| 20 52 34 2c 52 34 2c 23 | 34 0d 09 6a 2a 43 4d 50 | R4,R4,#|4..j*CMP|
|00001fa0| 20 52 34 2c 23 26 34 30 | 3a 42 47 45 20 6e 6f 73 | R4,#&40|:BGE nos|
|00001fb0| 75 63 68 73 65 72 69 61 | 6c 3a 42 20 74 6f 70 62 |uchseria|l:B topb|
|00001fc0| 61 75 64 0d 09 74 1d 2e | 6f 75 74 62 61 75 64 3a |aud..t..|outbaud:|
|00001fd0| 4d 4f 56 20 52 32 2c 52 | 34 2c 4c 53 52 20 23 32 |MOV R2,R|4,LSR #2|
|00001fe0| 0d 09 7e 4d 4d 4f 56 20 | 52 30 2c 23 35 3a 4d 4f |..~MMOV |R0,#5:MO|
|00001ff0| 56 20 52 31 2c 52 32 3a | 53 57 49 22 4f 53 5f 53 |V R1,R2:|SWI"OS_S|
|00002000| 65 72 69 61 6c 4f 70 22 | 3a 4d 4f 56 20 52 30 2c |erialOp"|:MOV R0,|
|00002010| 23 36 3a 4d 4f 56 20 52 | 31 2c 52 32 3a 53 57 49 |#6:MOV R|1,R2:SWI|
|00002020| 22 4f 53 5f 53 65 72 69 | 61 6c 4f 70 22 0d 09 88 |"OS_Seri|alOp"...|
|00002030| 0f 4d 4f 56 20 52 31 35 | 2c 52 31 34 0d 09 92 04 |.MOV R15|,R14....|
|00002040| 0d 09 9c ab 2e 73 65 72 | 74 61 62 6c 65 3a 45 51 |.....ser|table:EQ|
|00002050| 55 44 20 39 36 30 30 3a | 45 51 55 44 20 37 35 3a |UD 9600:|EQUD 75:|
|00002060| 45 51 55 44 20 31 35 30 | 3a 45 51 55 44 20 33 30 |EQUD 150|:EQUD 30|
|00002070| 30 3a 45 51 55 44 20 31 | 32 30 30 3a 45 51 55 44 |0:EQUD 1|200:EQUD|
|00002080| 20 32 34 30 30 3a 45 51 | 55 44 20 34 38 30 30 3a | 2400:EQ|UD 4800:|
|00002090| 45 51 55 44 20 39 36 30 | 30 3a 45 51 55 44 20 31 |EQUD 960|0:EQUD 1|
|000020a0| 39 32 30 30 3a 45 51 55 | 44 20 35 30 3a 45 51 55 |9200:EQU|D 50:EQU|
|000020b0| 44 20 31 31 30 3a 45 51 | 55 44 20 31 33 34 3a 45 |D 110:EQ|UD 134:E|
|000020c0| 51 55 44 20 36 30 30 3a | 45 51 55 44 20 31 38 30 |QUD 600:|EQUD 180|
|000020d0| 30 3a 45 51 55 44 20 33 | 36 30 30 3a 45 51 55 44 |0:EQUD 3|600:EQUD|
|000020e0| 20 37 32 30 30 3a 41 4c | 49 47 4e 0d 09 a6 04 0d | 7200:AL|IGN.....|
|000020f0| 09 b0 11 2e 6e 6f 73 75 | 63 68 73 65 72 69 61 6c |....nosu|chserial|
|00002100| 0d 09 ba 3a 4d 4f 56 20 | 52 30 2c 52 31 3a 41 44 |...:MOV |R0,R1:AD|
|00002110| 52 20 52 31 2c 62 61 75 | 64 72 61 74 65 65 72 72 |R R1,bau|drateerr|
|00002120| 6f 72 3a 41 44 44 20 52 | 31 2c 52 31 2c 23 34 34 |or:ADD R|1,R1,#44|
|00002130| 3a 4d 4f 56 20 52 32 2c | 23 36 0d 09 c4 30 53 57 |:MOV R2,|#6...0SW|
|00002140| 49 22 4f 53 5f 42 69 6e | 61 72 79 54 6f 44 65 63 |I"OS_Bin|aryToDec|
|00002150| 69 6d 61 6c 22 3a 41 44 | 52 20 52 30 2c 62 61 75 |imal":AD|R R0,bau|
|00002160| 64 72 61 74 65 65 72 72 | 6f 72 0d 09 ce 3e 53 54 |drateerr|or...>ST|
|00002170| 4d 46 41 20 31 32 21 2c | 7b 52 31 34 7d 3a 42 4c |MFA 12!,|{R14}:BL|
|00002180| 20 72 65 70 6f 72 74 65 | 72 72 6f 72 3a 4c 44 4d | reporte|rror:LDM|
|00002190| 46 41 20 31 32 21 2c 7b | 52 31 34 7d 3a 4d 4f 56 |FA 12!,{|R14}:MOV|
|000021a0| 20 52 31 35 2c 52 31 34 | 0d 09 d8 04 0d 09 e2 5b | R15,R14|.......[|
|000021b0| 2e 62 61 75 64 72 61 74 | 65 65 72 72 6f 72 3a 45 |.baudrat|eerror:E|
|000021c0| 51 55 44 20 30 3a 45 51 | 55 53 20 22 43 61 6e 27 |QUD 0:EQ|US "Can'|
|000021d0| 74 20 73 65 74 20 73 65 | 72 69 61 6c 20 70 6f 72 |t set se|rial por|
|000021e0| 74 20 74 6f 20 61 20 62 | 61 75 64 20 72 61 74 65 |t to a b|aud rate|
|000021f0| 20 6f 66 20 20 20 20 20 | 20 20 22 3a 45 51 55 42 | of | ":EQUB|
|00002200| 30 3a 41 4c 49 47 4e 0d | 09 ec 04 0d 09 f6 3c 2e |0:ALIGN.|......<.|
|00002210| 64 65 73 63 62 61 75 64 | 3b 20 42 61 75 64 72 61 |descbaud|; Baudra|
|00002220| 74 65 20 6e 75 6d 62 65 | 72 20 69 6e 20 52 31 20 |te numbe|r in R1 |
|00002230| 70 6f 69 6e 74 65 72 20 | 74 6f 20 73 74 72 69 6e |pointer |to strin|
|00002240| 67 20 69 6e 20 52 32 0d | 0a 00 21 43 4d 50 20 52 |g in R2.|..!CMP R|
|00002250| 31 2c 23 26 31 30 3a 42 | 47 45 20 64 65 73 63 62 |1,#&10:B|GE descb|
|00002260| 61 75 64 65 72 72 6f 72 | 0d 0a 0a 32 4d 4f 56 20 |auderror|...2MOV |
|00002270| 52 31 2c 52 31 2c 4c 53 | 4c 23 32 3a 41 44 52 20 |R1,R1,LS|L#2:ADR |
|00002280| 52 33 2c 73 65 72 74 61 | 62 6c 65 3a 4c 44 52 20 |R3,serta|ble:LDR |
|00002290| 52 30 2c 5b 52 33 2c 52 | 31 5d 0d 0a 14 4a 4d 4f |R0,[R3,R|1]...JMO|
|000022a0| 56 20 52 31 2c 52 32 3a | 4d 4f 56 20 52 32 2c 23 |V R1,R2:|MOV R2,#|
|000022b0| 36 3a 53 57 49 22 4f 53 | 5f 42 69 6e 61 72 79 54 |6:SWI"OS|_BinaryT|
|000022c0| 6f 44 65 63 69 6d 61 6c | 22 3a 4d 4f 56 20 52 30 |oDecimal|":MOV R0|
|000022d0| 2c 23 26 30 3a 53 54 52 | 42 20 52 30 2c 5b 52 31 |,#&0:STR|B R0,[R1|
|000022e0| 2c 52 32 5d 0d 0a 1e 0f | 4d 4f 56 20 52 31 35 2c |,R2]....|MOV R15,|
|000022f0| 52 31 34 0d 0a 28 25 2e | 64 65 73 63 62 61 75 64 |R14..(%.|descbaud|
|00002300| 65 72 72 6f 72 3a 41 44 | 52 20 52 30 2c 64 65 73 |error:AD|R R0,des|
|00002310| 63 62 61 75 64 65 72 72 | 0d 0a 32 3e 53 54 4d 46 |cbauderr|..2>STMF|
|00002320| 41 20 31 32 21 2c 7b 52 | 31 34 7d 3a 42 4c 20 72 |A 12!,{R|14}:BL r|
|00002330| 65 70 6f 72 74 65 72 72 | 6f 72 3a 4c 44 4d 46 41 |eporterr|or:LDMFA|
|00002340| 20 31 32 21 2c 7b 52 31 | 34 7d 3a 4d 4f 56 20 52 | 12!,{R1|4}:MOV R|
|00002350| 31 35 2c 52 31 34 0d 0a | 3c 4b 2e 64 65 73 63 62 |15,R14..|<K.descb|
|00002360| 61 75 64 65 72 72 3a 45 | 51 55 44 30 3a 45 51 55 |auderr:E|QUD0:EQU|
|00002370| 53 22 49 6e 74 65 72 6e | 61 6c 20 45 72 72 6f 72 |S"Intern|al Error|
|00002380| 20 2d 20 4e 6f 20 73 75 | 63 68 20 62 61 75 64 20 | - No su|ch baud |
|00002390| 72 61 74 65 22 3a 45 51 | 55 42 30 3a 41 4c 49 47 |rate":EQ|UB0:ALIG|
|000023a0| 4e 0d 0a 46 04 0d 0a 50 | 2a 2e 73 65 74 66 6f 72 |N..F...P|*.setfor|
|000023b0| 6d 61 74 3b 20 52 31 3d | 62 69 74 73 2c 52 32 3d |mat; R1=|bits,R2=|
|000023c0| 73 74 6f 70 73 2c 52 33 | 3d 70 61 72 69 74 79 0d |stops,R3|=parity.|
|000023d0| 0a 5a 10 42 49 43 20 52 | 34 2c 52 34 2c 52 34 0d |.Z.BIC R|4,R4,R4.|
|000023e0| 0a 64 04 0d 0a 6e 2a 2e | 72 65 70 6f 72 74 65 72 |.d...n*.|reporter|
|000023f0| 72 6f 72 20 3b 20 50 6f | 69 6e 74 65 72 20 74 6f |ror ; Po|inter to|
|00002400| 20 73 74 72 69 6e 67 20 | 69 6e 20 52 30 0d 0a 78 | string |in R0..x|
|00002410| 16 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 2c |.STMFA R|12!,{R1,|
|00002420| 52 32 7d 0d 0a 82 33 4d | 4f 56 20 52 31 2c 23 33 |R2}...3M|OV R1,#3|
|00002430| 3a 41 44 52 20 52 32 2c | 74 61 73 6b 6e 61 6d 65 |:ADR R2,|taskname|
|00002440| 3a 53 57 49 22 57 69 6d | 70 5f 52 65 70 6f 72 74 |:SWI"Wim|p_Report|
|00002450| 45 72 72 6f 72 22 0d 0a | 8c 1b 54 45 51 20 52 31 |Error"..|..TEQ R1|
|00002460| 2c 23 32 3a 42 45 51 20 | 63 72 61 73 68 65 78 69 |,#2:BEQ |crashexi|
|00002470| 74 0d 0a 96 22 4c 44 4d | 46 41 20 52 31 32 21 2c |t..."LDM|FA R12!,|
|00002480| 7b 52 31 2c 52 32 7d 3a | 4d 4f 56 20 52 31 35 2c |{R1,R2}:|MOV R15,|
|00002490| 52 31 34 0d 0a a0 37 2e | 74 61 73 6b 6e 61 6d 65 |R14...7.|taskname|
|000024a0| 3a 45 51 55 53 22 52 69 | 73 63 79 20 54 4e 43 20 |:EQUS"Ri|scy TNC |
|000024b0| 4d 61 63 68 69 6e 65 20 | 43 6f 64 65 22 3a 45 51 |Machine |Code":EQ|
|000024c0| 55 42 20 30 3a 41 4c 49 | 47 4e 0d 0a aa 04 0d 0a |UB 0:ALI|GN......|
|000024d0| b4 0e 2e 63 72 61 73 68 | 65 78 69 74 0d 0a be 36 |...crash|exit...6|
|000024e0| 4d 4f 56 20 52 30 2c 30 | 3a 4d 4f 56 20 52 31 2c |MOV R0,0|:MOV R1,|
|000024f0| 30 3a 53 57 49 22 57 69 | 6d 70 5f 43 6c 6f 73 65 |0:SWI"Wi|mp_Close|
|00002500| 44 6f 77 6e 22 3a 53 57 | 49 22 4f 53 5f 45 78 69 |Down":SW|I"OS_Exi|
|00002510| 74 22 0d 0a c8 1a 3b 20 | 53 65 72 69 61 6c 20 50 |t"....; |Serial P|
|00002520| 6f 72 74 20 72 6f 75 74 | 69 6e 65 73 0d 0a d2 04 |ort rout|ines....|
|00002530| 0d 0a dc 20 2e 73 65 6e | 64 62 72 65 61 6b 3b 20 |... .sen|dbreak; |
|00002540| 53 65 6e 64 20 62 72 65 | 61 6b 20 6c 65 76 65 6c |Send bre|ak level|
|00002550| 0d 0a e6 2e 4d 4f 56 20 | 52 30 2c 23 32 3a 4d 4f |....MOV |R0,#2:MO|
|00002560| 56 20 52 31 2c 23 26 32 | 30 3a 53 57 49 20 26 35 |V R1,#&2|0:SWI &5|
|00002570| 37 3a 42 20 6d 61 73 74 | 65 72 65 78 69 74 0d 0a |7:B mast|erexit..|
|00002580| f0 05 3b 0d 0a fa 12 3b | 43 6c 6f 63 6b 20 53 65 |..;....;|Clock Se|
|00002590| 74 74 69 6e 67 0d 0b 04 | 12 3b 3d 3d 3d 3d 3d 3d |tting...|.;======|
|000025a0| 3d 3d 3d 3d 3d 3d 3d 0d | 0b 0e 05 3b 0d 0b 18 41 |=======.|...;...A|
|000025b0| 2e 63 6c 6f 63 6b 6c 6f | 61 64 3b 20 53 65 6e 64 |.clocklo|ad; Send|
|000025c0| 20 41 72 63 20 63 6c 6f | 63 6b 20 69 6e 66 6f 20 | Arc clo|ck info |
|000025d0| 74 6f 20 54 4e 43 3b 20 | 34 20 2f 20 36 20 70 61 |to TNC; |4 / 6 pa|
|000025e0| 72 61 6d 65 74 65 72 20 | 69 6e 20 52 31 0d 0b 22 |rameter |in R1.."|
|000025f0| 4b 4d 4f 56 20 52 36 2c | 52 31 3a 4d 4f 56 20 52 |KMOV R6,|R1:MOV R|
|00002600| 30 2c 23 31 32 38 3a 4d | 4f 56 20 52 31 2c 23 32 |0,#128:M|OV R1,#2|
|00002610| 35 33 3a 53 57 49 22 4f | 53 5f 42 79 74 65 22 3a |53:SWI"O|S_Byte":|
|00002620| 43 4d 50 20 52 31 2c 23 | 33 30 3a 42 4c 45 20 63 |CMP R1,#|30:BLE c|
|00002630| 61 6e 74 63 6c 6f 63 6b | 0d 0b 2c 27 4d 4f 56 20 |antclock|..,'MOV |
|00002640| 52 30 2c 23 33 3a 4d 4f | 56 20 52 31 2c 23 33 3a |R0,#3:MO|V R1,#3:|
|00002650| 53 57 49 20 36 3a 4d 4f | 56 20 52 33 2c 52 31 0d |SWI 6:MO|V R3,R1.|
|00002660| 0b 36 26 53 57 49 20 31 | 3a 45 51 55 42 20 33 3a |.6&SWI 1|:EQUB 3:|
|00002670| 45 51 55 53 22 44 41 59 | 54 49 4d 45 20 22 3a 45 |EQUS"DAY|TIME ":E|
|00002680| 51 55 42 20 30 0d 0b 40 | 1d 4d 4f 56 20 52 30 2c |QUB 0..@|.MOV R0,|
|00002690| 23 33 3a 4d 4f 56 20 52 | 31 2c 52 33 3a 53 57 49 |#3:MOV R|1,R3:SWI|
|000026a0| 20 36 0d 0b 4a 2b 4d 4f | 56 20 52 30 2c 23 31 3a | 6..J+MO|V R0,#1:|
|000026b0| 41 44 52 20 52 34 2c 63 | 6c 6f 63 6b 70 61 72 6d |ADR R4,c|lockparm|
|000026c0| 3a 42 49 43 20 52 35 2c | 52 35 2c 52 35 0d 0b 54 |:BIC R5,|R5,R5..T|
|000026d0| 3f 53 54 52 42 20 52 30 | 2c 5b 52 34 5d 3a 4d 4f |?STRB R0|,[R4]:MO|
|000026e0| 56 20 52 30 2c 23 31 34 | 3a 4d 4f 56 20 52 31 2c |V R0,#14|:MOV R1,|
|000026f0| 52 34 3a 53 57 49 20 37 | 3a 4d 4f 56 20 52 30 2c |R4:SWI 7|:MOV R0,|
|00002700| 23 33 3a 4d 4f 56 20 52 | 35 2c 23 36 0d 0b 5e 1f |#3:MOV R|5,#6..^.|
|00002710| 3b 4c 44 52 42 20 52 36 | 2c 74 6e 63 6e 75 6d 62 |;LDRB R6|,tncnumb|
|00002720| 3a 3b 4d 4f 56 20 52 35 | 2c 23 36 0d 0b 68 35 54 |:;MOV R5|,#6..h5T|
|00002730| 45 51 20 52 36 2c 23 30 | 3a ec 51 20 52 35 2c 23 |EQ R6,#0|:.Q R5,#|
|00002740| 26 35 3b 20 4e 75 6d 62 | 65 72 20 6f 66 20 70 61 |&5; Numb|er of pa|
|00002750| 72 61 6d 65 74 65 72 73 | 20 74 6f 20 73 65 6e 64 |rameters| to send|
|00002760| 0d 0b 72 2f 54 45 51 20 | 52 36 2c 23 31 3a ec 51 |..r/TEQ |R6,#1:.Q|
|00002770| 20 52 35 2c 23 26 35 3b | 20 35 20 70 61 72 61 6d | R5,#&5;| 5 param|
|00002780| 65 74 65 72 73 20 64 61 | 74 65 20 68 68 6d 6d 0d |eters da|te hhmm.|
|00002790| 0b 7c 31 54 45 51 20 52 | 36 2c 23 32 3a ec 51 20 |.|1TEQ R|6,#2:.Q |
|000027a0| 52 35 2c 23 26 36 3b 20 | 36 20 70 61 72 61 6d 65 |R5,#&6; |6 parame|
|000027b0| 74 65 72 73 20 64 61 74 | 65 20 68 68 6d 6d 73 73 |ters dat|e hhmmss|
|000027c0| 0d 0b 86 17 54 45 51 20 | 52 36 2c 23 33 3a ec 51 |....TEQ |R6,#3:.Q|
|000027d0| 20 52 35 2c 23 26 35 0d | 0b 90 17 54 45 51 20 52 | R5,#&5.|...TEQ R|
|000027e0| 36 2c 23 34 3a ec 51 20 | 52 35 2c 23 26 35 0d 0b |6,#4:.Q |R5,#&5..|
|000027f0| 9a 17 54 45 51 20 52 36 | 2c 23 36 3a ec 51 20 52 |..TEQ R6|,#6:.Q R|
|00002800| 35 2c 23 26 36 0d 0b a4 | 18 4d 4f 56 20 52 36 2c |5,#&6...|.MOV R6,|
|00002810| 52 35 3a 4d 4f 56 20 52 | 35 2c 23 26 30 0d 0b ae |R5:MOV R|5,#&0...|
|00002820| 0d 2e 74 6f 70 63 6c 6f | 63 6b 0d 0b b8 1c 54 45 |..topclo|ck....TE|
|00002830| 51 20 52 35 2c 23 33 3a | 41 44 44 45 51 20 52 35 |Q R5,#3:|ADDEQ R5|
|00002840| 2c 52 35 2c 23 31 0d 0b | c2 46 4c 44 52 42 20 52 |,R5,#1..|.FLDRB R|
|00002850| 33 2c 5b 52 34 2c 52 35 | 5d 3a 80 20 52 31 2c 52 |3,[R4,R5|]:. R1,R|
|00002860| 33 2c 23 25 31 31 31 31 | 30 30 30 30 3a 4d 4f 56 |3,#%1111|0000:MOV|
|00002870| 20 52 31 2c 52 31 2c 41 | 53 52 20 23 34 3a 41 44 | R1,R1,A|SR #4:AD|
|00002880| 44 20 52 31 2c 52 31 2c | 23 26 33 30 0d 0b cc 1a |D R1,R1,|#&30....|
|00002890| 53 57 49 20 26 35 37 3a | 42 43 53 20 6d 61 73 74 |SWI &57:|BCS mast|
|000028a0| 65 72 65 78 69 74 0d 0b | d6 25 80 20 52 31 2c 52 |erexit..|.%. R1,R|
|000028b0| 33 2c 23 25 30 30 30 30 | 31 31 31 31 3a 41 44 44 |3,#%0000|1111:ADD|
|000028c0| 20 52 31 2c 52 31 2c 23 | 26 33 30 0d 0b e0 1a 53 | R1,R1,#|&30....S|
|000028d0| 57 49 20 26 35 37 3a 42 | 43 53 20 6d 61 73 74 65 |WI &57:B|CS maste|
|000028e0| 72 65 78 69 74 0d 0b ea | 1a 54 45 51 20 52 35 2c |rexit...|.TEQ R5,|
|000028f0| 52 36 3a 42 45 51 20 6f | 75 74 63 6c 6f 63 6b 0d |R6:BEQ o|utclock.|
|00002900| 0b f4 1b 41 44 44 20 52 | 35 2c 52 35 2c 23 31 3a |...ADD R|5,R5,#1:|
|00002910| 42 20 74 6f 70 63 6c 6f | 63 6b 0d 0b fe 0d 2e 6f |B topclo|ck.....o|
|00002920| 75 74 63 6c 6f 63 6b 0d | 0c 08 23 4d 4f 56 20 52 |utclock.|..#MOV R|
|00002930| 31 2c 23 31 33 3a 53 57 | 49 20 26 35 37 3a 42 20 |1,#13:SW|I &57:B |
|00002940| 6d 61 73 74 65 72 65 78 | 69 74 0d 0c 12 0e 2e 63 |masterex|it.....c|
|00002950| 61 6e 74 63 6c 6f 63 6b | 0d 0c 1c 47 41 44 52 20 |antclock|...GADR |
|00002960| 52 30 2c 63 61 6e 74 63 | 6c 6f 63 6b 65 72 72 3a |R0,cantc|lockerr:|
|00002970| 53 54 4d 46 41 20 31 32 | 21 2c 7b 52 31 34 7d 3a |STMFA 12|!,{R14}:|
|00002980| 42 4c 20 72 65 70 6f 72 | 74 65 72 72 6f 72 3a 4c |BL repor|terror:L|
|00002990| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 34 7d 0d |DMFA R12|!,{R14}.|
|000029a0| 0c 26 10 42 20 6d 61 73 | 74 65 72 65 78 69 74 0d |.&.B mas|terexit.|
|000029b0| 0c 30 72 2e 63 61 6e 74 | 63 6c 6f 63 6b 65 72 72 |.0r.cant|clockerr|
|000029c0| 3a 45 51 55 44 20 30 3a | 45 51 55 53 20 22 53 65 |:EQUD 0:|EQUS "Se|
|000029d0| 72 69 61 6c 20 70 6f 72 | 74 20 6f 75 74 70 75 74 |rial por|t output|
|000029e0| 20 62 75 66 66 65 72 20 | 69 73 20 63 6f 6e 73 74 | buffer |is const|
|000029f0| 69 70 61 74 65 64 20 2d | 20 54 4e 43 20 63 6c 6f |ipated -| TNC clo|
|00002a00| 63 6b 20 63 61 6e 6e 6f | 74 20 62 65 20 75 70 64 |ck canno|t be upd|
|00002a10| 61 74 65 64 22 3a 45 51 | 55 42 30 3a 41 4c 49 47 |ated":EQ|UB0:ALIG|
|00002a20| 4e 0d 0c 3a 0e 2e 63 6c | 6f 63 6b 70 61 72 6d 0d |N..:..cl|ockparm.|
|00002a30| 0c 44 11 45 51 55 44 20 | 30 3a 45 51 55 44 20 30 |.D.EQUD |0:EQUD 0|
|00002a40| 0d 0c 4e 04 0d 0c 58 0a | 2e 66 6c 6f 61 64 0d 0c |..N...X.|.fload..|
|00002a50| 62 04 0d 0c 6c 23 3b 53 | 65 72 69 61 6c 20 50 6f |b...l#;S|erial Po|
|00002a60| 72 74 20 4d 61 69 6e 20 | 69 6e 70 75 74 20 52 6f |rt Main |input Ro|
|00002a70| 75 74 69 6e 65 0d 0c 76 | 23 3b 3d 3d 3d 3d 3d 3d |utine..v|#;======|
|00002a80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002a90| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 0c 80 05 3b 0d 0c 8a |========|....;...|
|00002aa0| 0b 2e 63 68 61 72 64 69 | 0d 0c 94 49 4c 44 52 20 |..chardi|...ILDR |
|00002ab0| 52 30 2c 69 70 69 6e 3a | 4c 44 52 20 52 31 2c 69 |R0,ipin:|LDR R1,i|
|00002ac0| 70 6f 75 74 3b 20 20 20 | 20 20 20 20 20 20 20 20 |pout; | |
|00002ad0| 20 20 20 20 44 6f 65 73 | 20 74 68 65 20 62 69 67 | Does| the big|
|00002ae0| 20 62 75 66 66 65 72 20 | 6e 65 65 64 20 61 74 74 | buffer |need att|
|00002af0| 6e 0d 0c 9e 3f 54 45 51 | 20 52 30 2c 52 31 3a 42 |n...?TEQ| R0,R1:B|
|00002b00| 4c 4e 45 20 6e 65 77 73 | 65 72 69 6e 70 3b 20 20 |LNE news|erinp; |
|00002b10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 49 66 20 | | If |
|00002b20| 79 65 73 20 61 74 74 65 | 6e 64 20 74 6f 20 69 74 |yes atte|nd to it|
|00002b30| 0d 0c a8 10 42 20 6d 61 | 73 74 65 72 65 78 69 74 |....B ma|sterexit|
|00002b40| 0d 0c b2 04 0d 0c bc 0e | 2e 6e 65 77 73 65 72 69 |........|.newseri|
|00002b50| 6e 70 0d 0c c6 28 53 54 | 4d 46 41 20 52 31 32 21 |np...(ST|MFA R12!|
|00002b60| 2c 7b 52 39 2d 52 31 31 | 2c 52 31 34 7d 3a 42 49 |,{R9-R11|,R14}:BI|
|00002b70| 43 20 52 31 2c 52 31 2c | 52 31 0d 0c d0 49 4c 44 |C R1,R1,|R1...ILD|
|00002b80| 52 42 20 52 31 2c 69 70 | 75 73 65 72 3b 20 20 20 |RB R1,ip|user; |
|00002b90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002ba0| 20 20 20 20 20 20 49 73 | 20 74 68 65 20 63 75 72 | Is| the cur|
|00002bb0| 72 65 6e 74 20 75 73 65 | 72 20 73 65 6e 73 69 62 |rent use|r sensib|
|00002bc0| 6c 65 3f 0d 0c da 42 54 | 45 51 20 52 31 2c 23 26 |le?...BT|EQ R1,#&|
|00002bd0| 30 30 3a 42 45 51 20 73 | 65 72 69 6e 70 6e 6f 72 |00:BEQ s|erinpnor|
|00002be0| 65 70 3b 20 20 20 20 20 | 20 20 20 20 20 20 20 5a |ep; | Z|
|00002bf0| 65 72 6f 20 6d 65 61 6e | 73 20 64 6f 6e 27 74 20 |ero mean|s don't |
|00002c00| 74 6f 75 63 68 0d 0c e4 | 4d 43 4d 50 20 52 31 2c |touch...|MCMP R1,|
|00002c10| 23 26 31 30 3a 42 47 45 | 20 73 65 72 69 6e 70 6e |#&10:BGE| serinpn|
|00002c20| 6f 72 65 70 3b 20 20 20 | 20 20 20 20 20 20 20 20 |orep; | |
|00002c30| 20 54 68 65 72 65 20 61 | 72 65 6e 27 74 20 61 6e | There a|ren't an|
|00002c40| 79 20 73 74 72 65 61 6d | 73 20 6f 76 65 72 20 26 |y stream|s over &|
|00002c50| 31 30 0d 0c ee 3f 4c 44 | 52 20 52 35 2c 66 6c 61 |10...?LD|R R5,fla|
|00002c60| 67 62 61 73 65 3a 4d 4f | 56 20 52 31 2c 52 31 2c |gbase:MO|V R1,R1,|
|00002c70| 4c 53 4c 23 35 3b 20 20 | 20 20 20 20 20 20 47 65 |LSL#5; | Ge|
|00002c80| 74 20 74 68 65 20 73 74 | 72 65 61 6d 20 66 6c 61 |t the st|ream fla|
|00002c90| 67 0d 0c f8 1c 4c 44 52 | 20 52 30 2c 5b 52 35 2c |g....LDR| R0,[R5,|
|00002ca0| 52 31 5d 3a 54 53 54 20 | 52 30 2c 23 31 0d 0d 02 |R1]:TST |R0,#1...|
|00002cb0| 43 42 4e 45 74 6f 70 73 | 65 72 69 6e 70 3b 20 20 |CBNEtops|erinp; |
|00002cc0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002cd0| 20 20 20 20 20 20 20 20 | 20 49 66 20 69 74 27 73 | | If it's|
|00002ce0| 20 61 63 74 69 76 65 2c | 20 6c 65 74 73 20 67 6f | active,| lets go|
|00002cf0| 0d 0d 0c 48 42 49 43 20 | 52 31 2c 52 31 2c 52 31 |...HBIC |R1,R1,R1|
|00002d00| 3a 4d 4f 56 20 52 31 2c | 23 30 37 3b 20 20 20 20 |:MOV R1,|#07; |
|00002d10| 20 20 20 20 20 20 20 20 | 20 20 20 20 62 75 74 20 | | but |
|00002d20| 69 66 20 6e 6f 74 2c 20 | 74 72 79 20 74 68 65 20 |if not, |try the |
|00002d30| 74 65 72 6d 69 6e 61 6c | 0d 0d 16 22 4d 4f 56 20 |terminal|..."MOV |
|00002d40| 52 31 2c 52 31 2c 4c 53 | 4c 23 35 3a 4c 44 52 20 |R1,R1,LS|L#5:LDR |
|00002d50| 52 30 2c 5b 52 35 2c 52 | 31 5d 0d 0d 20 1d 54 53 |R0,[R5,R|1].. .TS|
|00002d60| 54 20 52 30 2c 23 31 3a | 42 45 51 20 73 65 72 69 |T R0,#1:|BEQ seri|
|00002d70| 6e 70 6e 6f 72 65 70 0d | 0d 2a 4a 4d 4f 56 20 52 |npnorep.|.*JMOV R|
|00002d80| 31 2c 52 31 2c 4c 53 52 | 23 35 3a 53 54 52 20 52 |1,R1,LSR|#5:STR R|
|00002d90| 31 2c 69 70 75 73 65 72 | 3b 20 20 20 20 20 20 20 |1,ipuser|; |
|00002da0| 20 20 20 61 6e 64 20 6d | 61 6b 65 20 69 74 20 74 | and m|ake it t|
|00002db0| 68 65 20 63 75 72 72 65 | 6e 74 20 73 74 72 65 61 |he curre|nt strea|
|00002dc0| 6d 0d 0d 34 04 0d 0d 3e | 0e 2e 74 6f 70 73 65 72 |m..4...>|..topser|
|00002dd0| 69 6e 70 0d 0d 48 49 42 | 4c 20 72 74 6f 62 75 66 |inp..HIB|L rtobuf|
|00002de0| 30 3b 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |0; | |
|00002df0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 47 | | G|
|00002e00| 65 74 20 62 79 74 65 73 | 20 66 72 6f 6d 20 73 65 |et bytes| from se|
|00002e10| 72 69 61 6c 20 69 6e 74 | 6f 20 42 30 0d 0d 52 4c |rial int|o B0..RL|
|00002e20| 4c 44 52 20 52 30 2c 69 | 70 73 77 66 6c 3a 54 53 |LDR R0,i|pswfl:TS|
|00002e30| 54 20 52 30 2c 23 31 3b | 20 20 20 20 20 20 20 20 |T R0,#1;| |
|00002e40| 20 20 20 20 20 20 20 20 | 41 72 65 20 77 65 20 6c | |Are we l|
|00002e50| 6f 63 6b 65 64 20 61 67 | 61 69 6e 73 74 20 73 74 |ocked ag|ainst st|
|00002e60| 72 20 63 68 61 6e 67 65 | 0d 0d 5c 16 42 4c 4e 45 |r change|..\.BLNE|
|00002e70| 20 73 74 72 65 61 6d 63 | 68 65 63 6b 65 72 0d 0d | streamc|hecker..|
|00002e80| 66 3b 42 4c 20 73 65 72 | 69 6e 70 31 3b 20 20 20 |f;BL ser|inp1; |
|00002e90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002ea0| 20 20 20 20 20 20 20 20 | 20 20 44 69 73 74 72 69 | | Distri|
|00002eb0| 62 75 74 65 20 74 68 65 | 6d 0d 0d 70 39 42 49 43 |bute the|m..p9BIC|
|00002ec0| 20 52 33 2c 52 33 2c 52 | 33 3a 53 54 52 42 20 52 | R3,R3,R|3:STRB R|
|00002ed0| 33 2c 62 75 66 70 6f 73 | 6e 3b 20 20 20 20 20 20 |3,bufpos|n; |
|00002ee0| 20 20 20 20 20 43 6c 65 | 61 72 20 42 30 20 74 6f | Cle|ar B0 to|
|00002ef0| 20 30 0d 0d 7a 10 2e 73 | 65 72 69 6e 70 6e 6f 72 | 0..z..s|erinpnor|
|00002f00| 65 70 0d 0d 84 1b 4c 44 | 4d 46 41 20 52 31 32 21 |ep....LD|MFA R12!|
|00002f10| 2c 7b 52 39 2d 52 31 31 | 2c 52 31 34 7d 0d 0d 8e |,{R9-R11|,R14}...|
|00002f20| 0f 4d 4f 56 20 52 31 35 | 2c 52 31 34 0d 0d 98 04 |.MOV R15|,R14....|
|00002f30| 0d 0d a2 0c 2e 72 74 6f | 62 75 66 30 0d 0d ac 21 |.....rto|buf0...!|
|00002f40| 53 54 4d 46 41 20 52 31 | 32 21 2c 7b 52 31 34 7d |STMFA R1|2!,{R14}|
|00002f50| 3a 42 49 43 20 52 30 2c | 52 30 2c 52 30 0d 0d b6 |:BIC R0,|R0,R0...|
|00002f60| 22 4c 44 52 20 52 31 2c | 62 75 66 66 65 72 62 61 |"LDR R1,|bufferba|
|00002f70| 73 65 3a 42 49 43 20 52 | 32 2c 52 32 2c 52 32 0d |se:BIC R|2,R2,R2.|
|00002f80| 0d c0 20 4c 44 52 20 52 | 33 2c 69 70 62 75 66 66 |.. LDR R|3,ipbuff|
|00002f90| 65 72 3a 4c 44 52 20 52 | 34 2c 69 70 6f 75 74 0d |er:LDR R|4,ipout.|
|00002fa0| 0d ca 0f 4c 44 52 20 52 | 35 2c 69 70 69 6e 0d 0d |...LDR R|5,ipin..|
|00002fb0| d4 0e 2e 74 6f 70 72 74 | 6f 62 75 66 0d 0d de 36 |...toprt|obuf...6|
|00002fc0| 4c 44 52 42 20 52 30 2c | 5b 52 33 2c 52 34 5d 3b |LDRB R0,|[R3,R4];|
|00002fd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002fe0| 20 20 20 20 20 20 20 20 | 47 65 74 20 61 20 63 68 | |Get a ch|
|00002ff0| 61 72 0d 0d e8 13 53 54 | 52 42 20 52 30 2c 5b 52 |ar....ST|RB R0,[R|
|00003000| 31 2c 52 32 5d 0d 0d f2 | 10 41 44 44 20 52 32 2c |1,R2]...|.ADD R2,|
|00003010| 52 32 2c 23 31 0d 0d fc | 21 41 44 44 20 52 34 2c |R2,#1...|!ADD R4,|
|00003020| 52 34 2c 23 31 3a 42 49 | 43 20 52 34 2c 52 34 2c |R4,#1:BI|C R4,R4,|
|00003030| 23 26 31 30 30 30 0d 0e | 06 3f 54 45 51 20 52 30 |#&1000..|.?TEQ R0|
|00003040| 2c 23 26 30 44 3a 42 45 | 51 20 66 69 6e 72 62 75 |,#&0D:BE|Q finrbu|
|00003050| 66 30 3b 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |f0; | |
|00003060| 20 20 53 74 6f 70 20 69 | 66 20 77 65 20 67 65 74 | Stop i|f we get|
|00003070| 20 61 20 43 52 0d 0e 10 | 43 54 45 51 20 52 34 2c | a CR...|CTEQ R4,|
|00003080| 52 35 3a 42 45 51 20 66 | 69 6e 72 62 75 66 30 3b |R5:BEQ f|inrbuf0;|
|00003090| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000030a0| 20 53 74 6f 70 20 69 66 | 20 77 65 20 65 6d 70 74 | Stop if| we empt|
|000030b0| 79 20 62 75 66 66 65 72 | 0d 0e 1a 47 43 4d 50 20 |y buffer|...GCMP |
|000030c0| 52 32 2c 23 38 30 3a 42 | 4c 54 20 74 6f 70 72 74 |R2,#80:B|LT toprt|
|000030d0| 6f 62 75 66 3b 20 20 20 | 20 20 20 20 20 20 20 20 |obuf; | |
|000030e0| 20 20 20 20 53 74 6f 70 | 20 69 66 20 77 65 20 61 | Stop| if we a|
|000030f0| 72 65 20 67 6f 69 6e 67 | 20 74 6f 20 66 61 72 0d |re going| to far.|
|00003100| 0e 24 0d 2e 66 69 6e 72 | 62 75 66 30 0d 0e 2e 13 |.$..finr|buf0....|
|00003110| 53 54 52 42 20 52 32 2c | 62 75 66 70 6f 73 6e 0d |STRB R2,|bufposn.|
|00003120| 0e 38 10 53 54 52 20 52 | 34 2c 69 70 6f 75 74 0d |.8.STR R|4,ipout.|
|00003130| 0e 42 1f 4c 44 4d 46 41 | 20 31 32 21 2c 7b 52 31 |.B.LDMFA| 12!,{R1|
|00003140| 34 7d 3a 4d 4f 56 20 52 | 31 35 2c 52 31 34 0d 0e |4}:MOV R|15,R14..|
|00003150| 4c 04 0d 0e 56 12 2e 73 | 74 72 65 61 6d 63 68 65 |L...V..s|treamche|
|00003160| 63 6b 65 72 0d 0e 60 2a | 42 49 43 20 52 30 2c 52 |cker..`*|BIC R0,R|
|00003170| 30 2c 52 30 3a 42 49 43 | 20 52 32 2c 52 32 2c 52 |0,R0:BIC| R2,R2,R|
|00003180| 32 3a 42 49 43 20 52 34 | 2c 52 34 2c 52 34 0d 0e |2:BIC R4|,R4,R4..|
|00003190| 6a 24 4c 44 52 20 52 31 | 2c 62 75 66 66 65 72 62 |j$LDR R1|,bufferb|
|000031a0| 61 73 65 3a 4c 44 52 20 | 52 33 2c 62 75 66 70 6f |ase:LDR |R3,bufpo|
|000031b0| 73 6e 0d 0e 74 15 4c 44 | 52 20 52 35 2c 73 77 69 |sn..t.LD|R R5,swi|
|000031c0| 74 63 68 62 61 73 65 0d | 0e 7e 10 4c 44 52 42 20 |tchbase.|.~.LDRB |
|000031d0| 52 34 2c 5b 52 35 5d 0d | 0e 92 1d 43 4d 50 20 52 |R4,[R5].|...CMP R|
|000031e0| 34 2c 23 30 3a 42 45 51 | 20 63 6f 6d 70 73 74 63 |4,#0:BEQ| compstc|
|000031f0| 68 65 63 6b 0d 0e 9c 11 | 2e 74 6f 70 73 69 6d 70 |heck....|.topsimp|
|00003200| 63 68 65 63 6b 0d 0e a6 | 13 4c 44 52 42 20 52 30 |check...|.LDRB R0|
|00003210| 2c 5b 52 31 2c 52 32 5d | 0d 0e b0 19 43 4d 50 20 |,[R1,R2]|....CMP |
|00003220| 52 30 2c 52 34 3a 42 45 | 51 20 66 6f 75 6e 64 73 |R0,R4:BE|Q founds|
|00003230| 74 0d 0e ba 10 41 44 44 | 20 52 32 2c 52 32 2c 23 |t....ADD| R2,R2,#|
|00003240| 31 0d 0e c4 1e 54 45 51 | 20 52 32 2c 52 33 3a 42 |1....TEQ| R2,R3:B|
|00003250| 4e 45 20 74 6f 70 73 69 | 6d 70 63 68 65 63 6b 0d |NE topsi|mpcheck.|
|00003260| 0e ce 0f 4d 4f 56 20 52 | 31 35 2c 52 31 34 0d 0e |...MOV R|15,R14..|
|00003270| d8 04 0d 0e e2 10 2e 63 | 6f 6d 70 73 74 63 68 65 |.......c|ompstche|
|00003280| 63 6b 0d 0e ec 12 42 20 | 74 6f 70 73 69 6d 70 63 |ck....B |topsimpc|
|00003290| 68 65 63 6b 0d 0e f6 0c | 2e 66 6f 75 6e 64 73 74 |heck....|.foundst|
|000032a0| 0d 0e f7 27 3b 53 74 72 | 61 69 67 68 74 20 73 74 |...';Str|aight st|
|000032b0| 72 65 61 6d 63 68 65 63 | 6b 73 20 77 6f 72 6b 20 |reamchec|ks work |
|000032c0| 74 6f 20 68 65 72 65 0d | 0f 00 0f 4d 4f 56 20 52 |to here.|...MOV R|
|000032d0| 31 35 2c 52 31 34 0d 0f | 0a 04 0d 0f 14 46 2e 73 |15,R14..|.....F.s|
|000032e0| 65 72 69 6e 70 31 3b 20 | 20 20 20 20 20 20 20 20 |erinp1; | |
|000032f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003300| 20 20 20 20 20 20 20 44 | 69 73 74 72 69 62 75 74 | D|istribut|
|00003310| 65 20 74 68 65 20 63 68 | 61 72 61 63 74 65 72 73 |e the ch|aracters|
|00003320| 0d 0f 1e 14 53 54 4d 46 | 41 20 52 31 32 21 2c 7b |....STMF|A R12!,{|
|00003330| 52 31 34 7d 0d 0f 28 25 | 4c 44 52 20 52 32 2c 62 |R14}..(%|LDR R2,b|
|00003340| 75 66 66 65 72 62 61 73 | 65 3a 4c 44 52 42 20 52 |ufferbas|e:LDRB R|
|00003350| 33 2c 62 75 66 70 6f 73 | 6e 0d 0f 32 4e 42 49 43 |3,bufpos|n..2NBIC|
|00003360| 20 52 34 2c 52 34 2c 52 | 34 3a 4c 44 52 20 52 35 | R4,R4,R|4:LDR R5|
|00003370| 2c 66 6c 61 67 62 61 73 | 65 3b 20 20 20 20 20 20 |,flagbas|e; |
|00003380| 20 20 20 20 20 20 52 31 | 3d 4c 61 73 74 20 63 68 | R1|=Last ch|
|00003390| 61 72 2c 52 32 20 62 75 | 66 62 61 73 65 2c 52 33 |ar,R2 bu|fbase,R3|
|000033a0| 20 42 75 66 70 6f 73 0d | 0f 3c 3e 4c 44 52 42 20 | Bufpos.|.<>LDRB |
|000033b0| 52 34 2c 69 70 75 73 65 | 72 3a 4d 4f 56 20 52 34 |R4,ipuse|r:MOV R4|
|000033c0| 2c 52 34 2c 4c 53 4c 23 | 35 3b 20 20 20 20 20 20 |,R4,LSL#|5; |
|000033d0| 20 20 20 20 46 6c 61 67 | 20 6f 66 66 73 65 74 20 | Flag| offset |
|000033e0| 69 6e 20 52 34 0d 0f 46 | 47 4c 44 52 20 52 30 2c |in R4..F|GLDR R0,|
|000033f0| 5b 52 35 2c 52 34 5d 3b | 20 20 20 20 20 20 20 20 |[R5,R4];| |
|00003400| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003410| 20 20 47 65 74 20 74 68 | 65 20 63 68 61 6e 6e 65 | Get th|e channe|
|00003420| 6c 20 66 6c 61 67 20 69 | 6e 20 52 30 0d 0f 50 43 |l flag i|n R0..PC|
|00003430| 54 53 54 20 52 30 2c 23 | 31 3a 42 45 51 20 20 73 |TST R0,#|1:BEQ s|
|00003440| 65 72 69 6e 70 31 65 72 | 72 6e 6f 63 68 61 6e 3b |erinp1er|rnochan;|
|00003450| 20 20 20 20 20 20 20 20 | 20 51 75 69 74 20 69 66 | | Quit if|
|00003460| 20 63 68 61 6e 6e 65 6c | 20 63 6c 6f 73 65 64 0d | channel| closed.|
|00003470| 0f 5a 42 54 53 54 20 52 | 30 2c 23 32 3a 42 4c 4e |.ZBTST R|0,#2:BLN|
|00003480| 45 20 77 72 69 74 65 73 | 63 72 65 65 6e 3b 20 20 |E writes|creen; |
|00003490| 20 20 20 20 20 20 20 20 | 20 20 20 20 41 63 74 69 | | Acti|
|000034a0| 6f 6e 20 69 66 20 77 69 | 6e 64 6f 77 20 6f 70 65 |on if wi|ndow ope|
|000034b0| 6e 0d 0f 64 3c 54 53 54 | 20 52 30 2c 23 34 3a 42 |n..d<TST| R0,#4:B|
|000034c0| 4c 4e 45 20 73 65 6e 64 | 70 72 69 6e 74 3b 20 20 |LNE send|print; |
|000034d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 53 65 | | Se|
|000034e0| 6e 64 20 74 6f 20 70 72 | 69 6e 74 65 72 0d 0f 6e |nd to pr|inter..n|
|000034f0| 39 54 53 54 20 52 30 2c | 23 38 3a 42 4c 4e 45 20 |9TST R0,|#8:BLNE |
|00003500| 73 65 6e 64 64 69 73 63 | 3b 20 20 20 20 20 20 20 |senddisc|; |
|00003510| 20 20 20 20 20 20 20 20 | 20 20 53 65 6e 64 20 74 | | Send t|
|00003520| 6f 20 64 69 73 6b 0d 0f | 78 0f 2e 73 65 72 69 6e |o disk..|x..serin|
|00003530| 70 31 6f 75 74 0d 0f 82 | 14 4c 44 4d 46 41 20 52 |p1out...|.LDMFA R|
|00003540| 31 32 21 2c 7b 52 31 34 | 7d 0d 0f 8c 0f 4d 4f 56 |12!,{R14|}....MOV|
|00003550| 20 52 31 35 2c 52 31 34 | 0d 0f 96 04 0d 0f a0 48 | R15,R14|.......H|
|00003560| 2e 73 65 72 69 6e 70 31 | 65 72 72 6e 6f 63 68 61 |.serinp1|errnocha|
|00003570| 6e 3b 20 41 63 74 69 6f | 6e 20 74 6f 20 62 65 20 |n; Actio|n to be |
|00003580| 74 61 6b 65 6e 20 75 70 | 6f 6e 20 66 69 6e 64 69 |taken up|on findi|
|00003590| 6e 67 20 63 68 61 6e 6e | 65 6c 20 69 73 20 63 6c |ng chann|el is cl|
|000035a0| 6f 73 65 64 0d 0f aa 1b | 3b 53 54 4d 46 41 20 52 |osed....|;STMFA R|
|000035b0| 31 32 21 2c 7b 52 30 2d | 52 37 2c 52 31 34 7d 0d |12!,{R0-|R7,R14}.|
|000035c0| 0f b4 20 41 44 52 20 52 | 30 2c 6e 6f 63 68 61 6e |.. ADR R|0,nochan|
|000035d0| 3a 42 4c 20 72 65 70 6f | 72 74 65 72 72 6f 72 0d |:BL repo|rterror.|
|000035e0| 0f be 1b 3b 4c 44 4d 46 | 41 20 52 31 32 21 2c 7b |...;LDMF|A R12!,{|
|000035f0| 52 30 2d 52 37 2c 52 31 | 34 7d 0d 0f c8 10 42 20 |R0-R7,R1|4}....B |
|00003600| 73 65 72 69 6e 70 31 6f | 75 74 0d 0f d2 4e 2e 6e |serinp1o|ut...N.n|
|00003610| 6f 63 68 61 6e 3a 45 51 | 55 44 20 30 3a 45 51 55 |ochan:EQ|UD 0:EQU|
|00003620| 53 22 41 74 74 65 6d 70 | 74 20 74 6f 20 70 72 6f |S"Attemp|t to pro|
|00003630| 63 65 73 73 20 63 6c 6f | 73 65 64 20 73 65 72 69 |cess clo|sed seri|
|00003640| 61 6c 20 69 6e 70 75 74 | 20 63 68 61 6e 6e 65 6c |al input| channel|
|00003650| 22 3a 45 51 55 42 20 30 | 0d 0f dc 09 41 4c 49 47 |":EQUB 0|....ALIG|
|00003660| 4e 0d 0f e6 04 0d 0f f0 | 17 2e 77 69 6e 6e 6f 74 |N.......|..winnot|
|00003670| 3a 4d 4f 56 20 52 31 35 | 2c 52 31 34 0d 0f fa 04 |:MOV R15|,R14....|
|00003680| 0d 10 04 0e 2e 73 65 6e | 64 70 72 69 6e 74 0d 10 |.....sen|dprint..|
|00003690| 0e 16 53 54 4d 46 41 20 | 52 31 32 21 2c 7b 52 30 |..STMFA |R12!,{R0|
|000036a0| 2d 52 36 7d 0d 10 18 34 | 4d 4f 56 20 52 31 2c 52 |-R6}...4|MOV R1,R|
|000036b0| 36 3a 42 49 43 20 52 34 | 2c 52 34 2c 52 34 3a 42 |6:BIC R4|,R4,R4:B|
|000036c0| 49 43 20 52 30 2c 52 30 | 2c 52 30 3a 41 44 44 20 |IC R0,R0|,R0:ADD |
|000036d0| 52 34 2c 52 34 2c 23 30 | 0d 10 22 0e 2e 74 73 65 |R4,R4,#0|.."..tse|
|000036e0| 6e 64 70 72 69 6e 0d 10 | 2c 2d 4c 44 52 42 20 52 |ndprin..|,-LDRB R|
|000036f0| 30 2c 5b 52 32 2c 52 34 | 5d 3a 54 45 51 20 52 30 |0,[R2,R4|]:TEQ R0|
|00003700| 2c 23 31 30 3a 42 45 51 | 20 62 79 73 65 6e 64 70 |,#10:BEQ| bysendp|
|00003710| 72 69 6e 0d 10 36 15 53 | 57 49 22 4f 53 5f 50 72 |rin..6.S|WI"OS_Pr|
|00003720| 69 6e 74 43 68 61 72 22 | 0d 10 40 0f 2e 62 79 73 |intChar"|..@..bys|
|00003730| 65 6e 64 70 72 69 6e 0d | 10 4a 28 41 44 44 20 52 |endprin.|.J(ADD R|
|00003740| 34 2c 52 34 2c 23 31 3a | 43 4d 50 20 52 34 2c 52 |4,R4,#1:|CMP R4,R|
|00003750| 33 3a 42 4c 54 20 74 73 | 65 6e 64 70 72 69 6e 0d |3:BLT ts|endprin.|
|00003760| 10 54 22 4c 44 4d 46 41 | 20 52 31 32 21 2c 7b 52 |.T"LDMFA| R12!,{R|
|00003770| 30 2d 52 36 7d 3a 4d 4f | 56 20 52 31 35 2c 52 31 |0-R6}:MO|V R15,R1|
|00003780| 34 0d 10 5e 04 0d 10 68 | 0d 2e 73 65 6e 64 64 69 |4..^...h|..senddi|
|00003790| 73 63 0d 10 72 1a 3b 57 | 72 69 74 65 20 74 6f 20 |sc..r.;W|rite to |
|000037a0| 61 20 73 70 6f 6f 6c 20 | 66 69 6c 65 0d 10 7c 16 |a spool |file..|.|
|000037b0| 53 54 4d 46 41 20 52 31 | 32 21 2c 7b 52 30 2d 52 |STMFA R1|2!,{R0-R|
|000037c0| 36 7d 0d 10 86 1f 41 44 | 44 20 52 34 2c 52 34 2c |6}....AD|D R4,R4,|
|000037d0| 23 38 3a 4c 44 52 20 52 | 36 2c 5b 52 35 2c 52 34 |#8:LDR R|6,[R5,R4|
|000037e0| 5d 0d 10 90 1b 54 53 54 | 20 52 30 2c 23 33 32 3a |]....TST| R0,#32:|
|000037f0| 42 4e 45 74 73 65 6e 64 | 64 69 73 63 0d 10 9a 0e |BNEtsend|disc....|
|00003800| 2e 64 73 65 6e 64 64 69 | 73 63 0d 10 a4 24 42 49 |.dsenddi|sc...$BI|
|00003810| 43 20 52 30 2c 52 30 2c | 52 30 3a 4d 4f 56 20 52 |C R0,R0,|R0:MOV R|
|00003820| 30 2c 23 32 3a 4d 4f 56 | 20 52 31 2c 52 36 0d 10 |0,#2:MOV| R1,R6..|
|00003830| ae 10 53 57 49 22 4f 53 | 5f 47 42 50 42 22 0d 10 |..SWI"OS|_GBPB"..|
|00003840| b8 22 4c 44 4d 46 41 20 | 52 31 32 21 2c 7b 52 30 |."LDMFA |R12!,{R0|
|00003850| 2d 52 36 7d 3a 4d 4f 56 | 20 52 31 35 2c 52 31 34 |-R6}:MOV| R15,R14|
|00003860| 0d 10 c2 0e 2e 74 73 65 | 6e 64 64 69 73 63 0d 10 |.....tse|nddisc..|
|00003870| cc 34 4d 4f 56 20 52 31 | 2c 52 36 3a 42 49 43 20 |.4MOV R1|,R6:BIC |
|00003880| 52 34 2c 52 34 2c 52 34 | 3a 42 49 43 20 52 30 2c |R4,R4,R4|:BIC R0,|
|00003890| 52 30 2c 52 30 3a 41 44 | 44 20 52 34 2c 52 34 2c |R0,R0:AD|D R4,R4,|
|000038a0| 23 30 0d 10 d6 11 2e 74 | 6f 70 74 73 65 6e 64 64 |#0.....t|optsendd|
|000038b0| 69 73 63 0d 10 e0 2f 4c | 44 52 42 20 52 30 2c 5b |isc.../L|DRB R0,[|
|000038c0| 52 32 2c 52 34 5d 3a 54 | 45 51 20 52 30 2c 23 26 |R2,R4]:T|EQ R0,#&|
|000038d0| 30 44 3a 42 45 51 20 62 | 79 74 73 65 6e 64 64 69 |0D:BEQ b|ytsenddi|
|000038e0| 73 63 0d 10 ea 10 53 57 | 49 22 4f 53 5f 42 50 75 |sc....SW|I"OS_BPu|
|000038f0| 74 22 0d 10 f4 10 2e 62 | 79 74 73 65 6e 64 64 69 |t".....b|ytsenddi|
|00003900| 73 63 0d 10 fe 2b 41 44 | 44 20 52 34 2c 52 34 2c |sc...+AD|D R4,R4,|
|00003910| 23 31 3a 43 4d 50 20 52 | 34 2c 52 33 3a 42 4c 54 |#1:CMP R|4,R3:BLT|
|00003920| 20 74 6f 70 74 73 65 6e | 64 64 69 73 63 0d 11 08 | toptsen|ddisc...|
|00003930| 22 4c 44 4d 46 41 20 52 | 31 32 21 2c 7b 52 30 2d |"LDMFA R|12!,{R0-|
|00003940| 52 36 7d 3a 4d 4f 56 20 | 52 31 35 2c 52 31 34 0d |R6}:MOV |R15,R14.|
|00003950| 11 12 04 0d 11 1c 40 2e | 77 72 69 74 65 73 63 72 |......@.|writescr|
|00003960| 65 65 6e 3b 20 20 20 20 | 20 20 20 20 20 20 20 20 |een; | |
|00003970| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003980| 57 72 69 74 65 20 74 6f | 20 74 68 65 20 73 63 72 |Write to| the scr|
|00003990| 65 65 6e 0d 11 26 4d 53 | 54 4d 46 41 20 52 31 32 |een..&MS|TMFA R12|
|000039a0| 21 2c 7b 52 30 2d 52 37 | 2c 52 31 34 7d 3b 20 20 |!,{R0-R7|,R14}; |
|000039b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000039c0| 52 30 3d 66 6c 61 67 73 | 2c 52 31 3d 4c 61 73 74 |R0=flags|,R1=Last|
|000039d0| 20 43 68 61 72 2c 52 32 | 3d 62 75 66 62 61 73 65 | Char,R2|=bufbase|
|000039e0| 0d 11 30 49 3b 20 20 20 | 20 20 20 20 20 20 20 20 |..0I; | |
|000039f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003a00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 52 33 3d | | R3=|
|00003a10| 62 75 66 70 6f 73 6e 2c | 52 34 3d 6f 66 66 73 65 |bufposn,|R4=offse|
|00003a20| 74 20 74 6f 20 66 6c 61 | 67 0d 11 3a 38 3b 20 20 |t to fla|g..:8; |
|00003a30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003a40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003a50| 20 20 20 20 20 20 52 35 | 3d 66 6c 61 67 62 61 73 | R5|=flagbas|
|00003a60| 65 0d 11 44 43 3b 20 20 | 20 20 20 20 20 20 20 20 |e..DC; | |
|00003a70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003a80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 52 33 | | R3|
|00003a90| 20 70 6f 69 6e 74 73 20 | 74 6f 20 6e 65 78 74 20 | points |to next |
|00003aa0| 73 6c 6f 74 0d 11 4e 2d | 3b 47 65 74 20 61 64 64 |slot..N-|;Get add|
|00003ab0| 72 65 73 73 20 6f 66 20 | 63 75 72 72 65 6e 74 20 |ress of |current |
|00003ac0| 6c 69 6e 65 20 69 6e 20 | 74 65 78 74 73 74 6f 72 |line in |textstor|
|00003ad0| 65 0d 11 58 32 53 54 4d | 46 41 20 52 31 32 21 2c |e..X2STM|FA R12!,|
|00003ae0| 7b 52 32 2d 52 33 7d 3a | 42 49 43 20 52 31 2c 52 |{R2-R3}:|BIC R1,R|
|00003af0| 31 2c 52 31 3a 4c 44 52 | 42 20 52 31 2c 69 70 75 |1,R1:LDR|B R1,ipu|
|00003b00| 73 65 72 0d 11 62 2e 4c | 44 52 20 52 32 2c 74 65 |ser..b.L|DR R2,te|
|00003b10| 72 6d 6c 69 6e 65 3a 53 | 55 42 20 52 32 2c 52 32 |rmline:S|UB R2,R2|
|00003b20| 2c 23 31 3a 42 4c 63 61 | 6c 63 74 65 78 74 61 64 |,#1:BLca|lctextad|
|00003b30| 64 0d 11 6c 2b 3b 4e 6f | 77 20 66 69 6e 64 20 74 |d..l+;No|w find t|
|00003b40| 68 65 20 5a 65 72 6f 20 | 64 65 6e 6f 74 69 6e 67 |he Zero |denoting|
|00003b50| 20 65 6e 64 20 6f 66 20 | 6c 69 6e 65 0d 11 76 0e | end of |line..v.|
|00003b60| 42 4c 66 69 6e 64 74 68 | 65 30 0d 11 80 1c 3b 4c |BLfindth|e0....;L|
|00003b70| 65 74 73 20 73 74 61 72 | 74 20 73 68 69 66 74 69 |ets star|t shifti|
|00003b80| 6e 20 74 68 65 6d 0d 11 | 8a 4a 3b 55 73 65 20 30 |n them..|.J;Use 0|
|00003b90| 20 66 6f 72 20 63 68 61 | 72 2c 31 3d 62 75 66 6f | for cha|r,1=bufo|
|00003ba0| 66 66 73 65 74 2c 32 3d | 62 75 66 62 61 73 65 2c |ffset,2=|bufbase,|
|00003bb0| 33 3d 62 75 66 74 6f 74 | 61 6c 2c 34 3d 64 65 73 |3=buftot|al,4=des|
|00003bc0| 62 61 73 65 2c 35 3d 64 | 65 73 6f 66 66 73 65 74 |base,5=d|esoffset|
|00003bd0| 0d 11 94 33 4d 4f 56 20 | 52 34 2c 52 31 3a 4d 4f |...3MOV |R4,R1:MO|
|00003be0| 56 20 52 35 2c 52 32 3a | 4c 44 52 20 52 36 2c 6c |V R5,R2:|LDR R6,l|
|00003bf0| 69 6e 65 6c 65 6e 3a 53 | 55 42 20 52 36 2c 52 36 |inelen:S|UB R6,R6|
|00003c00| 2c 23 32 0d 11 9e 30 4c | 44 4d 46 41 20 52 31 32 |,#2...0L|DMFA R12|
|00003c10| 21 2c 7b 52 32 2c 52 33 | 7d 3a 42 49 43 20 52 30 |!,{R2,R3|}:BIC R0|
|00003c20| 2c 52 30 2c 52 30 3a 42 | 49 43 20 52 31 2c 52 31 |,R0,R0:B|IC R1,R1|
|00003c30| 2c 52 31 0d 11 a8 10 2e | 74 6f 70 77 72 69 73 68 |,R1.....|topwrish|
|00003c40| 69 66 74 0d 11 b2 17 43 | 4d 50 20 52 35 2c 52 36 |ift....C|MP R5,R6|
|00003c50| 3a 42 47 54 20 77 72 69 | 63 72 0d 11 bc 1b 43 4d |:BGT wri|cr....CM|
|00003c60| 50 20 52 31 2c 52 33 3a | 42 47 45 20 77 72 69 66 |P R1,R3:|BGE wrif|
|00003c70| 69 6e 69 73 68 0d 11 c6 | 13 4c 44 52 42 20 52 30 |inish...|.LDRB R0|
|00003c80| 2c 5b 52 32 2c 52 31 5d | 0d 11 d0 19 54 45 51 20 |,[R2,R1]|....TEQ |
|00003c90| 52 30 2c 23 26 30 44 3a | 42 45 51 20 77 72 69 63 |R0,#&0D:|BEQ wric|
|00003ca0| 72 0d 11 da 20 43 4d 50 | 20 52 30 2c 23 26 32 30 |r... CMP| R0,#&20|
|00003cb0| 3a 42 4c 54 20 64 6f 6e | 74 77 72 69 73 68 69 66 |:BLT don|twrishif|
|00003cc0| 74 0d 11 e4 22 3b 43 4d | 50 20 52 30 2c 23 26 38 |t...";CM|P R0,#&8|
|00003cd0| 30 3a 3b 42 47 54 20 64 | 6f 6e 74 77 72 69 73 68 |0:;BGT d|ontwrish|
|00003ce0| 69 66 74 0d 11 ee 13 53 | 54 52 42 20 52 30 2c 5b |ift....S|TRB R0,[|
|00003cf0| 52 34 2c 52 35 5d 0d 11 | f8 10 41 44 44 20 52 35 |R4,R5]..|..ADD R5|
|00003d00| 2c 52 35 2c 23 31 0d 12 | 02 1e 2e 64 6f 6e 74 77 |,R5,#1..|...dontw|
|00003d10| 72 69 73 68 69 66 74 3a | 41 44 44 20 52 31 2c 52 |rishift:|ADD R1,R|
|00003d20| 31 2c 23 31 0d 12 0c 11 | 42 20 74 6f 70 77 72 69 |1,#1....|B topwri|
|00003d30| 73 68 69 66 74 0d 12 16 | 04 0d 12 20 0a 2e 77 72 |shift...|... ..wr|
|00003d40| 69 63 72 0d 12 2a 16 53 | 54 4d 46 41 20 52 31 32 |icr..*.S|TMFA R12|
|00003d50| 21 2c 7b 52 31 2d 52 39 | 7d 0d 12 34 1d 4d 4f 56 |!,{R1-R9|}..4.MOV|
|00003d60| 20 52 30 2c 23 30 3a 53 | 54 52 42 20 52 30 2c 5b | R0,#0:S|TRB R0,[|
|00003d70| 52 34 2c 52 35 5d 0d 12 | 3e 14 42 4c 20 66 6f 72 |R4,R5]..|>.BL for|
|00003d80| 63 65 6c 69 6e 65 64 72 | 61 77 0d 12 48 2d 42 49 |celinedr|aw..H-BI|
|00003d90| 43 20 52 31 2c 52 31 2c | 52 31 3a 4c 44 52 42 20 |C R1,R1,|R1:LDRB |
|00003da0| 52 31 2c 69 70 75 73 65 | 72 3a 42 4c 20 73 68 75 |R1,ipuse|r:BL shu|
|00003db0| 66 66 6c 69 6e 65 73 0d | 12 52 37 42 49 43 20 52 |fflines.|.R7BIC R|
|00003dc0| 30 2c 52 30 2c 52 30 3a | 53 54 52 42 20 52 30 2c |0,R0,R0:|STRB R0,|
|00003dd0| 5b 52 34 5d 3a 42 49 43 | 20 52 35 2c 52 35 2c 52 |[R4]:BIC| R5,R5,R|
|00003de0| 35 3a 42 49 43 20 52 39 | 2c 52 39 2c 52 39 0d 12 |5:BIC R9|,R9,R9..|
|00003df0| 5c 0e 4c 44 52 20 52 30 | 2c 73 73 6c 0d 12 66 17 |\.LDR R0|,ssl..f.|
|00003e00| 54 45 51 20 52 30 2c 23 | 31 3a ec 51 20 52 38 2c |TEQ R0,#|1:.Q R8,|
|00003e10| 23 33 32 0d 12 70 17 54 | 45 51 20 52 30 2c 23 32 |#32..p.T|EQ R0,#2|
|00003e20| 3a ec 51 20 52 38 2c 23 | 31 36 0d 12 7a 16 54 45 |:.Q R8,#|16..z.TE|
|00003e30| 51 20 52 30 2c 23 34 3a | ec 51 20 52 38 2c 23 38 |Q R0,#4:|.Q R8,#8|
|00003e40| 0d 12 84 16 54 45 51 20 | 52 30 2c 23 38 3a ec 51 |....TEQ |R0,#8:.Q|
|00003e50| 20 52 38 2c 23 34 0d 12 | 8e 17 54 45 51 20 52 30 | R8,#4..|..TEQ R0|
|00003e60| 2c 23 31 36 3a ec 51 20 | 52 38 2c 23 32 0d 12 98 |,#16:.Q |R8,#2...|
|00003e70| 17 54 45 51 20 52 30 2c | 23 33 32 3a ec 51 20 52 |.TEQ R0,|#32:.Q R|
|00003e80| 38 2c 23 31 0d 12 a2 04 | 0d 12 ac 0e 2e 74 6f 70 |8,#1....|.....top|
|00003e90| 73 63 72 6f 6c 6c 0d 12 | b6 10 4c 44 52 20 52 37 |scroll..|..LDR R7|
|00003ea0| 2c 62 6c 6f 63 6b 0d 12 | c0 47 4c 44 52 20 52 30 |,block..|.GLDR R0|
|00003eb0| 2c 5b 52 37 5d 3a 4c 44 | 52 20 52 31 2c 5b 52 37 |,[R7]:LD|R R1,[R7|
|00003ec0| 2c 23 34 34 5d 3a 4c 44 | 52 20 52 32 2c 5b 52 37 |,#44]:LD|R R2,[R7|
|00003ed0| 2c 23 34 38 5d 3a 4c 44 | 52 20 52 33 2c 62 6c 62 |,#48]:LD|R R3,blb|
|00003ee0| 3a 41 44 44 20 52 32 2c | 52 32 2c 52 33 0d 12 ca |:ADD R2,|R2,R3...|
|00003ef0| 33 4c 44 52 20 52 33 2c | 5b 52 37 2c 23 35 32 5d |3LDR R3,|[R7,#52]|
|00003f00| 3a 4c 44 52 20 52 34 2c | 5b 52 37 2c 23 35 36 5d |:LDR R4,|[R7,#56]|
|00003f10| 3a 4c 44 52 20 52 35 2c | 5b 52 37 2c 23 34 34 5d |:LDR R5,|[R7,#44]|
|00003f20| 0d 12 d4 25 4d 4f 56 20 | 52 36 2c 52 32 3a 4c 44 |...%MOV |R6,R2:LD|
|00003f30| 52 20 52 37 2c 73 73 6c | 3a 41 44 44 20 52 36 2c |R R7,ssl|:ADD R6,|
|00003f40| 52 36 2c 52 37 0d 12 de | 17 53 57 49 22 57 69 6d |R6,R7...|.SWI"Wim|
|00003f50| 70 5f 42 6c 6f 63 6b 43 | 6f 70 79 22 0d 12 e8 28 |p_BlockC|opy"...(|
|00003f60| 41 44 44 20 52 39 2c 52 | 39 2c 23 31 3a 43 4d 50 |ADD R9,R|9,#1:CMP|
|00003f70| 20 52 39 2c 52 38 3a 42 | 4c 54 20 74 6f 70 73 63 | R9,R8:B|LT topsc|
|00003f80| 72 6f 6c 6c 0d 12 f2 20 | 4c 44 4d 46 41 20 52 31 |roll... |LDMFA R1|
|00003f90| 32 21 2c 7b 52 31 2d 52 | 39 7d 3a 42 20 77 72 69 |2!,{R1-R|9}:B wri|
|00003fa0| 65 78 69 74 0d 12 fc 04 | 0d 13 06 0e 2e 77 72 69 |exit....|.....wri|
|00003fb0| 66 69 6e 69 73 68 0d 13 | 10 1d 4d 4f 56 20 52 30 |finish..|..MOV R0|
|00003fc0| 2c 23 30 3a 53 54 52 42 | 20 52 30 2c 5b 52 34 2c |,#0:STRB| R0,[R4,|
|00003fd0| 52 35 5d 0d 13 1a 14 42 | 4c 20 66 6f 72 63 65 6c |R5]....B|L forcel|
|00003fe0| 69 6e 65 64 72 61 77 0d | 13 24 04 0d 13 2e 0c 2e |inedraw.|.$......|
|00003ff0| 77 72 69 65 78 69 74 0d | 13 38 26 4c 44 4d 46 41 |wriexit.|.8&LDMFA|
|00004000| 20 52 31 32 21 2c 7b 52 | 30 2d 52 37 2c 52 31 34 | R12!,{R|0-R7,R14|
|00004010| 7d 3a 4d 4f 56 20 52 31 | 35 2c 52 31 34 0d 13 42 |}:MOV R1|5,R14..B|
|00004020| 04 0d 13 4c 2f 2e 67 65 | 74 77 69 6e 64 6f 77 69 |...L/.ge|twindowi|
|00004030| 6e 66 6f 3b 20 47 65 74 | 73 20 57 69 6e 64 6f 77 |nfo; Get|s Window|
|00004040| 20 49 6e 66 6f 20 49 6e | 74 6f 20 62 6c 6f 63 6b | Info In|to block|
|00004050| 0d 13 56 16 53 54 4d 46 | 41 20 52 31 32 21 2c 7b |..V.STMF|A R12!,{|
|00004060| 52 30 2d 52 35 7d 0d 13 | 60 10 42 49 43 20 52 34 |R0-R5}..|`.BIC R4|
|00004070| 2c 52 34 2c 52 34 0d 13 | 6a 4c 4c 44 52 20 52 31 |,R4,R4..|jLLDR R1|
|00004080| 2c 62 6c 6f 63 6b 3a 4c | 44 52 20 52 35 2c 66 6c |,block:L|DR R5,fl|
|00004090| 61 67 62 61 73 65 3a 4c | 44 52 42 20 52 34 2c 69 |agbase:L|DRB R4,i|
|000040a0| 70 75 73 65 72 3a 4d 4f | 56 20 52 34 2c 52 34 2c |puser:MO|V R4,R4,|
|000040b0| 4c 53 4c 23 35 3a 41 44 | 44 20 52 34 2c 52 34 2c |LSL#5:AD|D R4,R4,|
|000040c0| 23 34 0d 13 74 36 4c 44 | 52 20 52 30 2c 5b 52 35 |#4..t6LD|R R0,[R5|
|000040d0| 2c 52 34 5d 3a 53 54 52 | 20 52 30 2c 5b 52 31 5d |,R4]:STR| R0,[R1]|
|000040e0| 3a 53 57 49 22 57 69 6d | 70 5f 47 65 74 57 69 6e |:SWI"Wim|p_GetWin|
|000040f0| 64 6f 77 49 6e 66 6f 22 | 0d 13 7e 22 4c 44 4d 46 |dowInfo"|..~"LDMF|
|00004100| 41 20 52 31 32 21 2c 7b | 52 30 2d 52 35 7d 3a 4d |A R12!,{|R0-R5}:M|
|00004110| 4f 56 20 52 31 35 2c 52 | 31 34 0d 13 88 04 0d 13 |OV R15,R|14......|
|00004120| 92 30 2e 66 6f 72 63 65 | 6c 69 6e 65 64 72 61 77 |.0.force|linedraw|
|00004130| 3b 20 46 6f 72 63 65 73 | 20 72 65 64 72 61 77 20 |; Forces| redraw |
|00004140| 6f 66 20 62 6f 74 74 6f | 6d 20 6c 69 6e 65 0d 13 |of botto|m line..|
|00004150| 9c 17 53 54 4d 46 41 20 | 52 31 32 21 2c 7b 52 31 |..STMFA |R12!,{R1|
|00004160| 2c 52 31 34 7d 0d 13 a6 | 1f 42 49 43 20 52 31 2c |,R14}...|.BIC R1,|
|00004170| 52 31 2c 52 31 3a 4c 44 | 52 42 20 52 31 2c 69 70 |R1,R1:LD|RB R1,ip|
|00004180| 75 73 65 72 0d 13 b0 11 | 42 4c 20 6d 69 6e 69 73 |user....|BL minis|
|00004190| 74 72 65 61 6d 0d 13 ba | 16 4c 44 4d 46 41 20 31 |tream...|.LDMFA 1|
|000041a0| 32 21 2c 7b 52 31 2c 52 | 31 34 7d 0d 13 c4 0f 4d |2!,{R1,R|14}....M|
|000041b0| 4f 56 20 52 31 35 2c 52 | 31 34 0d 13 ce 04 0d 13 |OV R15,R|14......|
|000041c0| d8 0f 2e 74 65 73 74 73 | 74 72 69 6e 67 0d 13 e2 |...tests|tring...|
|000041d0| 33 45 51 55 53 22 54 68 | 69 73 20 69 73 20 74 65 |3EQUS"Th|is is te|
|000041e0| 73 74 20 73 74 72 69 6e | 67 22 3a 45 51 55 42 20 |st strin|g":EQUB |
|000041f0| 30 3a 45 51 55 42 20 26 | 30 44 3a 41 4c 49 47 4e |0:EQUB &|0D:ALIGN|
|00004200| 0d 13 ec 04 0d 13 f6 4a | 2e 66 69 6c 74 65 72 3b |.......J|.filter;|
|00004210| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00004220| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00004230| 20 55 73 65 64 20 74 6f | 20 66 69 6c 74 65 72 20 | Used to| filter |
|00004240| 6f 75 74 20 63 68 61 72 | 61 63 74 65 72 73 0d 14 |out char|acters..|
|00004250| 00 1e 3b 54 45 51 20 52 | 30 2c 23 26 30 44 3a 3b |..;TEQ R|0,#&0D:;|
|00004260| 42 45 51 20 6f 6b 66 69 | 6c 74 65 72 0d 14 0a 1c |BEQ okfi|lter....|
|00004270| 43 4d 50 20 52 30 2c 23 | 26 32 30 3a 42 47 45 20 |CMP R0,#|&20:BGE |
|00004280| 6f 6b 66 69 6c 74 65 72 | 0d 14 14 1f 42 49 43 20 |okfilter|....BIC |
|00004290| 52 30 2c 52 30 2c 52 30 | 3a 4d 4f 56 20 52 30 2c |R0,R0,R0|:MOV R0,|
|000042a0| 23 97 28 22 21 22 29 0d | 14 1e 0d 2e 6f 6b 66 69 |#.("!").|....okfi|
|000042b0| 6c 74 65 72 0d 14 28 0f | 4d 4f 56 20 52 31 35 2c |lter..(.|MOV R15,|
|000042c0| 52 31 34 0d 14 32 04 0d | 14 3c 04 0d 14 46 04 0d |R14..2..|.<...F..|
|000042d0| 14 50 0c 2e 74 6e 63 74 | 79 70 65 0d 14 5a 13 53 |.P..tnct|ype..Z.S|
|000042e0| 54 52 42 20 52 31 2c 74 | 6e 63 6e 75 6d 62 0d 14 |TRB R1,t|ncnumb..|
|000042f0| 64 10 42 20 6d 61 73 74 | 65 72 65 78 69 74 0d 14 |d.B mast|erexit..|
|00004300| 6e 04 0d 14 78 3b 2e 75 | 73 65 69 6e 66 3b 20 49 |n...x;.u|seinf; I|
|00004310| 6e 66 6f 72 6d 73 20 63 | 6f 64 65 20 6f 66 20 69 |nforms c|ode of i|
|00004320| 6e 70 75 74 20 75 73 65 | 72 2e 20 20 55 73 65 72 |nput use|r. User|
|00004330| 20 6e 75 6d 62 65 72 20 | 69 6e 20 52 31 0d 14 82 | number |in R1...|
|00004340| 1f 53 54 52 42 20 52 31 | 2c 69 70 75 73 65 72 3a |.STRB R1|,ipuser:|
|00004350| 42 20 6d 61 73 74 65 72 | 65 78 69 74 0d 14 8c 04 |B master|exit....|
|00004360| 0d 14 96 11 2e 63 61 6c | 63 74 65 78 74 61 64 64 |.....cal|ctextadd|
|00004370| 31 0d 14 a0 1f 42 4c 20 | 63 61 6c 63 74 65 78 74 |1....BL |calctext|
|00004380| 61 64 64 3a 42 20 6d 61 | 73 74 65 72 65 78 69 74 |add:B ma|sterexit|
|00004390| 0d 14 aa 04 0d 14 b4 46 | 2e 63 61 6c 63 74 65 78 |.......F|.calctex|
|000043a0| 74 61 64 64 3b 20 43 61 | 6c 63 75 6c 61 74 65 20 |tadd; Ca|lculate |
|000043b0| 74 68 65 20 61 64 64 72 | 65 73 73 20 6f 66 20 61 |the addr|ess of a|
|000043c0| 20 6c 69 6e 65 20 6f 66 | 20 74 65 78 74 20 69 6e | line of| text in|
|000043d0| 20 74 65 78 74 73 74 6f | 72 65 0d 14 be 42 3b 20 | textsto|re...B; |
|000043e0| 45 6e 74 65 72 20 77 69 | 74 68 20 73 74 72 65 61 |Enter wi|th strea|
|000043f0| 6d 20 69 6e 20 52 31 2c | 20 4c 69 6e 65 20 69 6e |m in R1,| Line in|
|00004400| 20 52 32 2e 20 45 78 69 | 74 20 77 69 74 68 20 61 | R2. Exi|t with a|
|00004410| 64 64 72 65 73 73 20 69 | 6e 20 52 31 0d 14 c8 39 |ddress i|n R1...9|
|00004420| 53 54 4d 46 41 20 52 31 | 32 21 2c 7b 52 32 2d 52 |STMFA R1|2!,{R2-R|
|00004430| 35 2c 52 31 34 7d 3a 4c | 44 52 20 52 33 2c 74 65 |5,R14}:L|DR R3,te|
|00004440| 72 6d 6c 69 6e 65 3a 4c | 44 52 20 52 34 2c 6c 69 |rmline:L|DR R4,li|
|00004450| 6e 65 6c 65 6e 0d 14 d2 | 47 4d 55 4c 20 52 35 2c |nelen...|GMUL R5,|
|00004460| 52 32 2c 52 34 3a 4d 55 | 4c 20 52 32 2c 52 33 2c |R2,R4:MU|L R2,R3,|
|00004470| 52 34 3a 4d 55 4c 20 52 | 30 2c 52 31 2c 52 32 3a |R4:MUL R|0,R1,R2:|
|00004480| 41 44 44 20 52 30 2c 52 | 30 2c 52 35 3a 4c 44 52 |ADD R0,R|0,R5:LDR|
|00004490| 20 52 32 2c 74 65 78 74 | 62 61 73 65 0d 14 dc 33 | R2,text|base...3|
|000044a0| 41 44 44 20 52 31 2c 52 | 30 2c 52 32 3a 4c 44 4d |ADD R1,R|0,R2:LDM|
|000044b0| 46 41 20 52 31 32 21 2c | 7b 52 32 2d 52 35 2c 52 |FA R12!,|{R2-R5,R|
|000044c0| 31 34 7d 3a 4d 4f 56 20 | 52 31 35 2c 52 31 34 0d |14}:MOV |R15,R14.|
|000044d0| 14 e6 04 0d 14 f0 32 2e | 66 69 6e 64 74 68 65 30 |......2.|findthe0|
|000044e0| 3b 20 46 69 6e 64 73 20 | 74 68 65 20 30 30 20 61 |; Finds |the 00 a|
|000044f0| 74 20 74 68 65 20 65 6e | 64 20 6f 66 20 61 20 73 |t the en|d of a s|
|00004500| 74 72 69 6e 67 0d 14 fa | 48 3b 20 45 6e 74 65 72 |tring...|H; Enter|
|00004510| 20 77 69 74 68 20 61 64 | 64 72 65 73 73 20 6f 66 | with ad|dress of|
|00004520| 20 53 74 72 69 6e 67 20 | 69 6e 20 52 31 2c 20 64 | String |in R1, d|
|00004530| 65 70 61 72 74 20 77 69 | 74 68 20 52 31 20 69 6e |epart wi|th R1 in|
|00004540| 74 61 63 74 20 61 6e 64 | 20 70 6f 73 6e 0d 15 04 |tact and| posn...|
|00004550| 11 3b 20 6f 66 20 30 30 | 20 69 6e 20 52 32 0d 15 |.; of 00| in R2..|
|00004560| 0e 2d 53 54 4d 46 41 20 | 52 31 32 21 2c 7b 52 30 |.-STMFA |R12!,{R0|
|00004570| 7d 3a 42 49 43 20 52 32 | 2c 52 32 2c 52 32 3a 42 |}:BIC R2|,R2,R2:B|
|00004580| 49 43 20 52 30 2c 52 30 | 2c 52 30 0d 15 18 0d 2e |IC R0,R0|,R0.....|
|00004590| 74 6f 70 66 69 6e 64 30 | 0d 15 22 37 4c 44 52 42 |topfind0|.."7LDRB|
|000045a0| 20 52 30 2c 5b 52 31 2c | 52 32 5d 3a 54 45 51 20 | R0,[R1,|R2]:TEQ |
|000045b0| 52 30 2c 23 30 3a 42 45 | 51 20 66 69 6e 64 30 6f |R0,#0:BE|Q find0o|
|000045c0| 75 74 3a 41 44 44 20 52 | 32 2c 52 32 2c 23 31 0d |ut:ADD R|2,R2,#1.|
|000045d0| 15 2c 1b 43 4d 50 20 52 | 32 2c 23 39 30 3a 42 4c |.,.CMP R|2,#90:BL|
|000045e0| 54 20 74 6f 70 66 69 6e | 64 30 0d 15 36 29 2e 66 |T topfin|d0..6).f|
|000045f0| 69 6e 64 30 6f 75 74 3a | 4c 44 4d 46 41 20 52 31 |ind0out:|LDMFA R1|
|00004600| 32 21 2c 7b 52 30 7d 3a | 4d 4f 56 20 52 31 35 2c |2!,{R0}:|MOV R15,|
|00004610| 52 31 34 0d 15 40 04 0d | 15 4a 26 2e 73 68 75 66 |R14..@..|.J&.shuf|
|00004620| 66 31 3a 42 4c 20 73 68 | 75 66 66 6c 69 6e 65 73 |f1:BL sh|ufflines|
|00004630| 3a 42 20 6d 61 73 74 65 | 72 65 78 69 74 0d 15 54 |:B maste|rexit..T|
|00004640| 04 0d 15 5e 34 2e 73 68 | 75 66 66 6c 69 6e 65 73 |...^4.sh|ufflines|
|00004650| 3b 20 4d 6f 76 65 20 6c | 69 6e 65 73 20 6f 6e 65 |; Move l|ines one|
|00004660| 20 75 70 20 69 6e 20 74 | 68 65 20 74 65 78 74 20 | up in t|he text |
|00004670| 73 74 6f 72 65 0d 15 68 | 1d 3b 20 45 6e 74 65 72 |store..h|.; Enter|
|00004680| 20 77 69 74 68 20 73 74 | 72 65 61 6d 20 69 6e 20 | with st|ream in |
|00004690| 52 31 0d 15 72 4e 53 54 | 4d 46 41 20 52 31 32 21 |R1..rNST|MFA R12!|
|000046a0| 2c 7b 52 32 2d 52 37 2c | 52 31 34 7d 3a 4d 4f 56 |,{R2-R7,|R14}:MOV|
|000046b0| 20 52 34 2c 52 31 3a 42 | 49 43 20 52 35 2c 52 35 | R4,R1:B|IC R5,R5|
|000046c0| 2c 52 35 3a 4c 44 52 20 | 52 36 2c 74 65 72 6d 6c |,R5:LDR |R6,terml|
|000046d0| 69 6e 65 3a 53 55 42 20 | 52 36 2c 52 36 2c 23 31 |ine:SUB |R6,R6,#1|
|000046e0| 0d 15 7c 1f 4c 44 52 20 | 52 33 2c 6c 69 6e 65 6c |..|.LDR |R3,linel|
|000046f0| 65 6e 3a 41 44 44 20 52 | 35 2c 52 35 2c 23 31 0d |en:ADD R|5,R5,#1.|
|00004700| 15 86 0d 2e 74 6f 70 73 | 68 75 66 66 0d 15 90 30 |....tops|huff...0|
|00004710| 4d 4f 56 20 52 31 2c 52 | 34 3a 4d 4f 56 20 52 32 |MOV R1,R|4:MOV R2|
|00004720| 2c 52 35 3a 42 4c 20 63 | 61 6c 63 74 65 78 74 61 |,R5:BL c|alctexta|
|00004730| 64 64 3a 4d 4f 56 20 52 | 37 2c 52 31 0d 15 9a 33 |dd:MOV R|7,R1...3|
|00004740| 4d 4f 56 20 52 31 2c 52 | 34 3a 41 44 44 20 52 32 |MOV R1,R|4:ADD R2|
|00004750| 2c 52 35 2c 23 31 3a 42 | 4c 20 63 61 6c 63 74 65 |,R5,#1:B|L calcte|
|00004760| 78 74 61 64 64 3a 4d 4f | 56 20 52 32 2c 52 37 0d |xtadd:MO|V R2,R7.|
|00004770| 15 a4 35 42 4c 20 73 68 | 69 66 74 63 68 61 72 73 |..5BL sh|iftchars|
|00004780| 3a 41 44 44 20 52 35 2c | 52 35 2c 23 31 3a 43 4d |:ADD R5,|R5,#1:CM|
|00004790| 50 20 52 35 2c 52 36 3a | 42 4c 54 20 74 6f 70 73 |P R5,R6:|BLT tops|
|000047a0| 68 75 66 66 0d 15 ae 26 | 4c 44 4d 46 41 20 52 31 |huff...&|LDMFA R1|
|000047b0| 32 21 2c 7b 52 32 2d 52 | 37 2c 52 31 34 7d 3a 4d |2!,{R2-R|7,R14}:M|
|000047c0| 4f 56 20 52 31 35 2c 52 | 31 34 0d 15 b8 04 0d 15 |OV R15,R|14......|
|000047d0| c2 25 2e 73 65 6e 64 62 | 74 3a 42 4c 20 63 68 65 |.%.sendb|t:BL che|
|000047e0| 63 6b 66 72 65 65 3a 42 | 20 6d 61 73 74 65 72 65 |ckfree:B| mastere|
|000047f0| 78 69 74 0d 15 cc 04 0d | 15 d6 0e 2e 63 68 65 63 |xit.....|....chec|
|00004800| 6b 66 72 65 65 0d 15 e0 | 30 53 54 4d 46 41 20 52 |kfree...|0STMFA R|
|00004810| 31 32 21 2c 7b 52 31 2c | 52 33 7d 3a 42 49 43 20 |12!,{R1,|R3}:BIC |
|00004820| 52 30 2c 52 30 2c 52 30 | 3a 42 49 43 20 52 31 2c |R0,R0,R0|:BIC R1,|
|00004830| 52 31 2c 52 31 0d 15 ea | 28 4d 4f 56 20 52 30 2c |R1,R1...|(MOV R0,|
|00004840| 23 31 32 38 3a 4d 4f 56 | 20 52 31 2c 23 32 35 33 |#128:MOV| R1,#253|
|00004850| 3a 53 57 49 22 4f 53 5f | 42 79 74 65 22 0d 15 f4 |:SWI"OS_|Byte"...|
|00004860| 1e 43 4d 50 20 52 31 2c | 23 31 32 38 3a 42 4c 54 |.CMP R1,|#128:BLT|
|00004870| 20 6e 6f 73 65 6e 64 66 | 69 6c 65 0d 15 fe 04 0d | nosendf|ile.....|
|00004880| 16 08 31 2e 73 65 6e 64 | 66 69 6c 65 3b 53 65 6e |..1.send|file;Sen|
|00004890| 64 20 62 79 74 65 73 20 | 66 72 6f 6d 20 66 69 6c |d bytes |from fil|
|000048a0| 65 20 74 6f 20 73 65 72 | 69 61 6c 20 70 6f 72 74 |e to ser|ial port|
|000048b0| 0d 16 12 2d 3b 20 20 20 | 20 20 20 20 20 20 53 74 |...-; | St|
|000048c0| 72 65 61 6d 20 74 6f 20 | 73 65 6e 64 20 62 79 74 |ream to |send byt|
|000048d0| 65 73 20 66 72 6f 6d 20 | 69 6e 20 52 31 0d 16 1c |es from |in R1...|
|000048e0| 16 4c 44 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 2c |.LDMFA R|12!,{R1,|
|000048f0| 52 33 7d 0d 16 26 3c 4d | 4f 56 20 52 32 2c 52 31 |R3}..&<M|OV R2,R1|
|00004900| 3a 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |:STMFA R|12!,{R14|
|00004910| 7d 3a 42 4c 20 73 77 69 | 74 63 68 6f 75 74 3a 4c |}:BL swi|tchout:L|
|00004920| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 34 7d 0d |DMFA R12|!,{R14}.|
|00004930| 16 30 3d 53 54 4d 46 41 | 20 52 31 32 21 2c 7b 52 |.0=STMFA| R12!,{R|
|00004940| 31 2d 52 35 7d 3a 42 49 | 43 20 52 34 2c 52 34 2c |1-R5}:BI|C R4,R4,|
|00004950| 52 34 3a 42 49 43 20 52 | 32 2c 52 32 2c 52 32 3a |R4:BIC R|2,R2,R2:|
|00004960| 42 49 43 20 52 30 2c 52 | 30 2c 52 30 0d 16 3a 3e |BIC R0,R|0,R0..:>|
|00004970| 4c 44 52 20 52 35 2c 66 | 6c 61 67 62 61 73 65 3a |LDR R5,f|lagbase:|
|00004980| 4d 4f 56 20 52 31 2c 52 | 31 2c 4c 53 4c 23 35 3a |MOV R1,R|1,LSL#5:|
|00004990| 4c 44 52 20 52 34 2c 5b | 52 35 2c 52 31 5d 3a 80 |LDR R4,[|R5,R1]:.|
|000049a0| 20 52 34 2c 52 34 2c 23 | 36 34 0d 16 44 20 41 44 | R4,R4,#|64..D AD|
|000049b0| 44 20 52 31 2c 52 31 2c | 23 31 32 3a 4c 44 52 20 |D R1,R1,|#12:LDR |
|000049c0| 52 33 2c 5b 52 35 2c 52 | 31 5d 0d 16 4e 10 2e 74 |R3,[R5,R|1]..N..t|
|000049d0| 6f 70 73 65 6e 64 66 69 | 6c 65 0d 16 58 37 41 44 |opsendfi|le..X7AD|
|000049e0| 44 20 52 32 2c 52 32 2c | 23 31 3a 4d 4f 56 20 52 |D R2,R2,|#1:MOV R|
|000049f0| 31 2c 52 33 3a 53 57 49 | 22 4f 53 5f 42 47 65 74 |1,R3:SWI|"OS_BGet|
|00004a00| 22 3a 42 43 53 20 66 69 | 6e 73 65 6e 64 66 69 6c |":BCS fi|nsendfil|
|00004a10| 65 0d 16 62 2c 54 45 51 | 20 52 30 2c 23 31 30 3a |e..b,TEQ| R0,#10:|
|00004a20| 42 45 51 20 73 65 6e 64 | 66 69 6c 65 6c 66 3a 2e |BEQ send|filelf:.|
|00004a30| 72 65 74 73 65 6e 64 66 | 69 6c 65 6c 66 0d 16 6c |retsendf|ilelf..l|
|00004a40| 44 4d 4f 56 20 52 31 2c | 52 30 3a 4d 4f 56 20 52 |DMOV R1,|R0:MOV R|
|00004a50| 30 2c 23 33 3a 53 57 49 | 22 4f 53 5f 53 65 72 69 |0,#3:SWI|"OS_Seri|
|00004a60| 61 6c 4f 70 22 3a 43 4d | 50 20 52 32 2c 23 31 32 |alOp":CM|P R2,#12|
|00004a70| 37 3a 42 4c 54 20 74 6f | 70 73 65 6e 64 66 69 6c |7:BLT to|psendfil|
|00004a80| 65 0d 16 76 22 4c 44 4d | 46 41 20 52 31 32 21 2c |e..v"LDM|FA R12!,|
|00004a90| 7b 52 31 2d 52 35 7d 3a | 4d 4f 56 20 52 31 35 2c |{R1-R5}:|MOV R15,|
|00004aa0| 52 31 34 0d 16 80 10 2e | 66 69 6e 73 65 6e 64 66 |R14.....|finsendf|
|00004ab0| 69 6c 65 0d 16 8a 15 4c | 44 4d 46 41 20 52 31 32 |ile....L|DMFA R12|
|00004ac0| 2c 7b 52 31 2d 52 35 7d | 0d 16 94 13 4c 44 52 20 |,{R1-R5}|....LDR |
|00004ad0| 52 35 2c 66 6c 61 67 62 | 61 73 65 0d 16 9e 3d 4d |R5,flagb|ase...=M|
|00004ae0| 4f 56 20 52 31 2c 52 31 | 2c 4c 53 4c 23 35 3a 41 |OV R1,R1|,LSL#5:A|
|00004af0| 44 44 20 52 33 2c 52 31 | 2c 23 31 32 3a 4c 44 52 |DD R3,R1|,#12:LDR|
|00004b00| 20 52 31 2c 5b 52 35 2c | 52 33 5d 3a 42 49 43 20 | R1,[R5,|R3]:BIC |
|00004b10| 52 30 2c 52 30 2c 52 30 | 0d 16 a8 10 53 57 49 22 |R0,R0,R0|....SWI"|
|00004b20| 4f 53 5f 46 69 6e 64 22 | 0d 16 b2 3d 53 55 42 20 |OS_Find"|...=SUB |
|00004b30| 52 33 2c 52 33 2c 23 31 | 32 3a 4c 44 52 20 52 30 |R3,R3,#1|2:LDR R0|
|00004b40| 2c 5b 52 35 2c 52 33 5d | 3a 42 49 43 20 52 30 2c |,[R5,R3]|:BIC R0,|
|00004b50| 52 30 2c 23 31 36 3a 53 | 54 52 20 52 30 2c 5b 52 |R0,#16:S|TR R0,[R|
|00004b60| 35 2c 52 33 5d 0d 16 bc | 22 4c 44 4d 46 41 20 52 |5,R3]...|"LDMFA R|
|00004b70| 31 32 21 2c 7b 52 31 2d | 52 35 7d 3a 4d 4f 56 20 |12!,{R1-|R5}:MOV |
|00004b80| 52 31 35 2c 52 31 34 0d | 16 c6 0f 2e 6e 6f 73 65 |R15,R14.|....nose|
|00004b90| 6e 64 66 69 6c 65 0d 16 | d0 22 4c 44 4d 46 41 20 |ndfile..|."LDMFA |
|00004ba0| 52 31 32 21 2c 7b 52 31 | 2c 52 33 7d 3a 4d 4f 56 |R12!,{R1|,R3}:MOV|
|00004bb0| 20 52 31 35 2c 52 31 34 | 0d 16 da 0f 2e 73 65 6e | R15,R14|.....sen|
|00004bc0| 64 66 69 6c 65 6c 66 0d | 16 e4 2b 54 45 51 20 52 |dfilelf.|..+TEQ R|
|00004bd0| 34 2c 23 30 3a 4d 4f 56 | 4e 45 20 52 30 2c 23 26 |4,#0:MOV|NE R0,#&|
|00004be0| 30 44 3a 42 20 72 65 74 | 73 65 6e 64 66 69 6c 65 |0D:B ret|sendfile|
|00004bf0| 6c 66 0d 16 ee 04 0d 16 | f8 23 2e 63 68 73 6e 62 |lf......|.#.chsnb|
|00004c00| 74 3a 42 4c 20 63 68 66 | 69 6e 64 62 74 3a 42 6d |t:BL chf|indbt:Bm|
|00004c10| 61 73 74 65 72 65 78 69 | 74 0d 17 02 04 0d 17 0c |asterexi|t.......|
|00004c20| 43 2e 63 68 66 69 6e 64 | 62 74 3b 20 4c 6f 6f 6b |C.chfind|bt; Look|
|00004c30| 20 66 6f 72 20 66 69 6c | 65 20 73 65 6e 64 69 6e | for fil|e sendin|
|00004c40| 67 20 62 79 74 65 73 2c | 20 61 6e 64 20 69 66 20 |g bytes,| and if |
|00004c50| 73 6f 20 67 65 74 20 74 | 68 65 6d 20 73 65 6e 74 |so get t|hem sent|
|00004c60| 0d 17 16 14 53 54 4d 46 | 41 20 52 31 32 21 2c 7b |....STMF|A R12!,{|
|00004c70| 52 31 34 7d 0d 17 20 43 | 4c 44 52 20 52 35 2c 66 |R14}.. C|LDR R5,f|
|00004c80| 6c 61 67 62 61 73 65 3a | 42 49 43 20 52 31 2c 52 |lagbase:|BIC R1,R|
|00004c90| 31 2c 52 31 3a 4d 4f 56 | 20 52 31 2c 23 31 3a 42 |1,R1:MOV| R1,#1:B|
|00004ca0| 49 43 20 52 34 2c 52 34 | 2c 52 34 3a 4c 44 52 42 |IC R4,R4|,R4:LDRB|
|00004cb0| 20 52 34 2c 73 74 6d 0d | 17 2a 10 2e 74 6f 70 63 | R4,stm.|.*..topc|
|00004cc0| 68 66 69 6e 64 62 74 0d | 17 34 22 4d 4f 56 20 52 |hfindbt.|.4"MOV R|
|00004cd0| 32 2c 52 31 2c 4c 53 4c | 23 35 3a 4c 44 52 20 52 |2,R1,LSL|#5:LDR R|
|00004ce0| 33 2c 5b 52 35 2c 52 32 | 5d 0d 17 3e 1c 54 53 54 |3,[R5,R2|]..>.TST|
|00004cf0| 20 52 33 2c 23 31 3a 42 | 45 51 20 61 76 63 68 66 | R3,#1:B|EQ avchf|
|00004d00| 69 6e 64 62 74 0d 17 48 | 1d 54 53 54 20 52 33 2c |indbt..H|.TST R3,|
|00004d10| 23 31 36 3a 42 4c 4e 45 | 20 63 68 65 63 6b 66 72 |#16:BLNE| checkfr|
|00004d20| 65 65 0d 17 52 0f 2e 61 | 76 63 68 66 69 6e 64 62 |ee..R..a|vchfindb|
|00004d30| 74 0d 17 5c 2a 41 44 44 | 20 52 31 2c 52 31 2c 23 |t..\*ADD| R1,R1,#|
|00004d40| 31 3a 43 4d 50 20 52 31 | 2c 52 34 3a 42 4c 45 20 |1:CMP R1|,R4:BLE |
|00004d50| 74 6f 70 63 68 66 69 6e | 64 62 74 0d 17 66 20 4c |topchfin|dbt..f L|
|00004d60| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 34 7d 3a |DMFA R12|!,{R14}:|
|00004d70| 4d 4f 56 20 52 31 35 2c | 52 31 34 0d 17 70 04 0d |MOV R15,|R14..p..|
|00004d80| 17 7a 05 3b 0d 17 84 13 | 3b 20 53 63 72 65 65 6e |.z.;....|; Screen|
|00004d90| 20 52 65 64 72 61 77 0d | 17 8e 13 3b 3d 3d 3d 3d | Redraw.|...;====|
|00004da0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 17 98 05 3b 0d |========|==....;.|
|00004db0| 17 a2 26 2e 73 74 72 64 | 72 31 3a 42 4c 20 73 74 |..&.strd|r1:BL st|
|00004dc0| 72 65 61 6d 64 72 61 77 | 3a 42 20 6d 61 73 74 65 |reamdraw|:B maste|
|00004dd0| 72 65 78 69 74 0d 17 ac | 26 2e 73 74 72 64 72 32 |rexit...|&.strdr2|
|00004de0| 3a 42 4c 20 6d 69 6e 69 | 73 74 72 65 61 6d 3a 42 |:BL mini|stream:B|
|00004df0| 20 6d 61 73 74 65 72 65 | 78 69 74 0d 17 b6 04 0d | mastere|xit.....|
|00004e00| 17 c0 0f 2e 6d 69 6e 69 | 73 74 72 65 61 6d 0d 17 |....mini|stream..|
|00004e10| ca 1d 3b 20 45 6e 74 65 | 72 20 77 69 74 68 20 73 |..; Ente|r with s|
|00004e20| 74 72 65 61 6d 20 69 6e | 20 52 31 0d 17 d4 1a 53 |tream in| R1....S|
|00004e30| 54 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 2d 52 38 |TMFA R12|!,{R1-R8|
|00004e40| 2c 52 31 34 7d 0d 17 de | 3f 4c 44 52 20 52 35 2c |,R14}...|?LDR R5,|
|00004e50| 66 6c 61 67 62 61 73 65 | 3a 4d 4f 56 20 52 31 2c |flagbase|:MOV R1,|
|00004e60| 52 31 2c 4c 53 4c 23 35 | 3a 41 44 44 20 52 31 2c |R1,LSL#5|:ADD R1,|
|00004e70| 52 31 2c 23 34 3a 4c 44 | 52 20 52 30 2c 5b 52 35 |R1,#4:LD|R R0,[R5|
|00004e80| 2c 52 31 5d 0d 17 e8 1c | 4c 44 52 20 52 31 2c 62 |,R1]....|LDR R1,b|
|00004e90| 6c 6f 63 6b 3a 53 54 52 | 20 52 30 2c 5b 52 31 5d |lock:STR| R0,[R1]|
|00004ea0| 0d 17 f2 1b 53 57 49 22 | 57 69 6d 70 5f 47 65 74 |....SWI"|Wimp_Get|
|00004eb0| 57 69 6e 64 6f 77 49 6e | 66 6f 22 0d 17 fc 22 4c |WindowIn|fo"..."L|
|00004ec0| 44 52 20 52 30 2c 5b 52 | 31 2c 23 34 34 5d 3a 53 |DR R0,[R|1,#44]:S|
|00004ed0| 54 52 20 52 30 2c 5b 52 | 31 2c 23 34 5d 0d 18 06 |TR R0,[R|1,#4]...|
|00004ee0| 32 4c 44 52 20 52 30 2c | 5b 52 31 2c 23 34 38 5d |2LDR R0,|[R1,#48]|
|00004ef0| 3a 41 44 44 53 20 52 30 | 2c 52 30 2c 23 31 35 30 |:ADDS R0|,R0,#150|
|00004f00| 3a 53 54 52 20 52 30 2c | 5b 52 31 2c 23 38 5d 0d |:STR R0,|[R1,#8].|
|00004f10| 18 10 23 4c 44 52 20 52 | 30 2c 5b 52 31 2c 23 35 |..#LDR R|0,[R1,#5|
|00004f20| 32 5d 3a 53 54 52 20 52 | 30 2c 5b 52 31 2c 23 31 |2]:STR R|0,[R1,#1|
|00004f30| 32 5d 0d 18 1a 31 4c 44 | 52 20 52 30 2c 5b 52 31 |2]...1LD|R R0,[R1|
|00004f40| 2c 23 38 5d 3a 41 44 44 | 53 20 52 30 2c 52 30 2c |,#8]:ADD|S R0,R0,|
|00004f50| 23 34 38 3a 53 54 52 20 | 52 30 2c 5b 52 31 2c 23 |#48:STR |R0,[R1,#|
|00004f60| 31 36 5d 0d 18 24 1a 53 | 57 49 22 57 69 6d 70 5f |16]..$.S|WI"Wimp_|
|00004f70| 55 70 64 61 74 65 57 69 | 6e 64 6f 77 22 0d 18 2e |UpdateWi|ndow"...|
|00004f80| 10 42 20 6d 61 69 6e 73 | 74 72 65 61 6d 0d 18 38 |.B mains|tream..8|
|00004f90| 04 0d 18 42 39 2e 73 74 | 72 65 61 6d 64 72 61 77 |...B9.st|reamdraw|
|00004fa0| 3b 20 44 72 61 77 20 74 | 68 65 20 73 74 72 65 61 |; Draw t|he strea|
|00004fb0| 6d 20 74 65 78 74 20 69 | 6e 20 74 68 65 20 72 69 |m text i|n the ri|
|00004fc0| 67 68 74 20 77 69 6e 64 | 6f 77 0d 18 4c 1d 3b 20 |ght wind|ow..L.; |
|00004fd0| 45 6e 74 65 72 20 77 69 | 74 68 20 73 74 72 65 61 |Enter wi|th strea|
|00004fe0| 6d 20 69 6e 20 52 31 0d | 18 56 4c 3b 20 52 65 6d |m in R1.|.VL; Rem|
|00004ff0| 65 6d 62 65 72 20 74 68 | 61 74 20 61 74 20 73 6f |ember th|at at so|
|00005000| 6d 65 20 73 74 61 67 65 | 20 79 6f 75 20 77 69 6c |me stage| you wil|
|00005010| 6c 20 68 61 76 65 20 74 | 6f 20 64 65 63 6f 64 65 |l have t|o decode|
|00005020| 20 73 74 72 65 61 6d 20 | 66 72 6f 6d 20 62 6c 6f | stream |from blo|
|00005030| 63 6b 21 0d 18 60 1a 53 | 54 4d 46 41 20 52 31 32 |ck!..`.S|TMFA R12|
|00005040| 21 2c 7b 52 31 2d 52 38 | 2c 52 31 34 7d 0d 18 6a |!,{R1-R8|,R14}..j|
|00005050| 31 53 54 52 20 52 31 2c | 74 73 3a 4c 44 52 20 52 |1STR R1,|ts:LDR R|
|00005060| 31 2c 62 6c 6f 63 6b 3a | 53 57 49 22 57 69 6d 70 |1,block:|SWI"Wimp|
|00005070| 5f 52 65 64 72 61 77 57 | 69 6e 64 6f 77 22 0d 18 |_RedrawW|indow"..|
|00005080| 74 0f 2e 6d 61 69 6e 73 | 74 72 65 61 6d 0d 18 7e |t..mains|tream..~|
|00005090| 30 4c 44 52 20 52 32 2c | 5b 52 31 2c 23 34 5d 3a |0LDR R2,|[R1,#4]:|
|000050a0| 4c 44 52 20 52 37 2c 5b | 52 31 2c 23 32 30 5d 3a |LDR R7,[|R1,#20]:|
|000050b0| 53 55 42 53 20 52 32 2c | 52 32 2c 52 37 0d 18 88 |SUBS R2,|R2,R7...|
|000050c0| 31 4c 44 52 20 52 33 2c | 5b 52 31 2c 23 31 36 5d |1LDR R3,|[R1,#16]|
|000050d0| 3a 4c 44 52 20 52 37 2c | 5b 52 31 2c 23 32 34 5d |:LDR R7,|[R1,#24]|
|000050e0| 3a 53 55 42 53 20 52 33 | 2c 52 33 2c 52 37 0d 18 |:SUBS R3|,R3,R7..|
|000050f0| 92 0e 2e 73 74 64 77 68 | 69 6c 65 31 0d 18 9c 1f |...stdwh|ile1....|
|00005100| 20 54 45 51 20 52 30 2c | 23 30 3a 42 45 51 20 6f | TEQ R0,|#0:BEQ o|
|00005110| 75 74 73 74 64 77 68 69 | 6c 65 31 0d 18 a6 11 20 |utstdwhi|le1.... |
|00005120| 4c 44 52 20 52 31 2c 62 | 6c 6f 63 6b 0d 18 b0 4c |LDR R1,b|lock...L|
|00005130| 20 4d 4f 56 20 52 36 2c | 52 33 3a 4c 44 52 20 52 | MOV R6,|R3:LDR R|
|00005140| 37 2c 5b 52 31 2c 23 34 | 30 5d 3a 53 55 42 53 20 |7,[R1,#4|0]:SUBS |
|00005150| 52 36 2c 52 36 2c 52 37 | 3a 53 55 42 53 20 52 36 |R6,R6,R7|:SUBS R6|
|00005160| 2c 52 36 2c 23 34 37 3a | 4d 4f 56 53 20 52 36 2c |,R6,#47:|MOVS R6,|
|00005170| 52 36 2c 41 53 52 23 35 | 0d 18 ba 29 20 43 4d 50 |R6,ASR#5|...) CMP|
|00005180| 20 52 36 2c 23 30 3a 4d | 4f 56 4c 54 53 20 52 36 | R6,#0:M|OVLTS R6|
|00005190| 2c 23 30 3a 41 44 44 53 | 20 52 36 2c 52 36 2c 23 |,#0:ADDS| R6,R6,#|
|000051a0| 31 0d 18 c4 4c 20 41 44 | 44 53 20 52 35 2c 52 33 |1...L AD|DS R5,R3|
|000051b0| 2c 23 34 37 3a 4c 44 52 | 20 52 37 2c 5b 52 31 2c |,#47:LDR| R7,[R1,|
|000051c0| 23 33 32 5d 3a 53 55 42 | 53 20 52 35 2c 52 35 2c |#32]:SUB|S R5,R5,|
|000051d0| 52 37 3a 4d 4f 56 53 20 | 52 35 2c 52 35 2c 41 53 |R7:MOVS |R5,R5,AS|
|000051e0| 52 23 35 3a 4d 4f 56 20 | 52 38 2c 52 36 0d 18 ce |R#5:MOV |R8,R6...|
|000051f0| 22 20 4c 44 52 20 52 37 | 2c 74 65 72 6d 6c 69 6e |" LDR R7|,termlin|
|00005200| 65 3a 41 44 44 53 20 52 | 37 2c 52 37 2c 23 31 0d |e:ADDS R|7,R7,#1.|
|00005210| 18 d8 0f 20 2e 73 74 64 | 77 68 69 6c 65 32 0d 18 |... .std|while2..|
|00005220| e2 20 20 20 43 4d 50 20 | 52 38 2c 52 37 3a 42 47 |. CMP |R8,R7:BG|
|00005230| 45 20 6f 75 74 73 74 64 | 77 68 69 6c 65 32 0d 18 |E outstd|while2..|
|00005240| ec 20 20 20 43 4d 50 20 | 52 38 2c 52 35 3a 42 47 |. CMP |R8,R5:BG|
|00005250| 54 20 6f 75 74 73 74 64 | 77 68 69 6c 65 32 0d 18 |T outstd|while2..|
|00005260| f6 29 20 20 53 54 4d 46 | 41 20 52 31 32 21 2c 7b |.) STMF|A R12!,{|
|00005270| 52 30 2d 52 34 2c 52 38 | 2c 52 31 34 7d 3a 4d 4f |R0-R4,R8|,R14}:MO|
|00005280| 56 20 52 34 2c 52 38 0d | 19 00 47 20 20 4d 4f 56 |V R4,R8.|..G MOV|
|00005290| 20 52 30 2c 23 32 34 34 | 3a 4d 4f 56 20 52 31 2c | R0,#244|:MOV R1,|
|000052a0| 52 32 3a 4d 4f 56 53 20 | 52 34 2c 52 34 2c 4c 53 |R2:MOVS |R4,R4,LS|
|000052b0| 4c 23 35 3a 53 55 42 53 | 20 52 32 2c 52 33 2c 52 |L#5:SUBS| R2,R3,R|
|000052c0| 34 3a 53 57 49 22 4f 53 | 5f 50 6c 6f 74 22 0d 19 |4:SWI"OS|_Plot"..|
|000052d0| 0a 41 20 20 4c 44 52 20 | 52 31 2c 74 73 3a 4d 4f |.A LDR |R1,ts:MO|
|000052e0| 56 20 52 32 2c 52 38 3a | 42 4c 20 63 61 6c 63 74 |V R2,R8:|BL calct|
|000052f0| 65 78 74 61 64 64 3a 4d | 4f 56 20 52 30 2c 52 31 |extadd:M|OV R0,R1|
|00005300| 3a 53 57 49 22 4f 53 5f | 57 72 69 74 65 30 22 0d |:SWI"OS_|Write0".|
|00005310| 19 14 04 0d 19 1e 2d 20 | 20 4c 44 4d 46 41 20 52 |......- | LDMFA R|
|00005320| 31 32 21 2c 7b 52 30 2d | 52 34 2c 52 38 2c 52 31 |12!,{R0-|R4,R8,R1|
|00005330| 34 7d 3a 41 44 44 53 20 | 52 38 2c 52 38 2c 23 31 |4}:ADDS |R8,R8,#1|
|00005340| 0d 19 28 11 20 20 42 20 | 73 74 64 77 68 69 6c 65 |..(. B |stdwhile|
|00005350| 32 0d 19 32 12 20 2e 6f | 75 74 73 74 64 77 68 69 |2..2. .o|utstdwhi|
|00005360| 6c 65 32 0d 19 3c 28 20 | 4c 44 52 20 52 31 2c 62 |le2..<( |LDR R1,b|
|00005370| 6c 6f 63 6b 3a 53 57 49 | 22 57 69 6d 70 5f 47 65 |lock:SWI|"Wimp_Ge|
|00005380| 74 52 65 63 74 61 6e 67 | 6c 65 22 0d 19 46 0f 42 |tRectang|le"..F.B|
|00005390| 20 73 74 64 77 68 69 6c | 65 31 0d 19 50 11 2e 6f | stdwhil|e1..P..o|
|000053a0| 75 74 73 74 64 77 68 69 | 6c 65 31 0d 19 5a 26 4c |utstdwhi|le1..Z&L|
|000053b0| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 2d 52 38 |DMFA R12|!,{R1-R8|
|000053c0| 2c 52 31 34 7d 3a 4d 4f | 56 20 52 31 35 2c 52 31 |,R14}:MO|V R15,R1|
|000053d0| 34 0d 19 64 05 3b 0d 19 | 6e 13 3b 53 70 72 69 74 |4..d.;..|n.;Sprit|
|000053e0| 65 20 4c 6f 61 64 69 6e | 67 0d 19 78 13 3b 3d 3d |e Loadin|g..x.;==|
|000053f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 19 82 05 |========|====....|
|00005400| 3b 0d 19 8c 0f 2e 73 70 | 72 69 74 65 6c 6f 61 64 |;.....sp|riteload|
|00005410| 0d 19 96 39 4d 4f 56 20 | 52 30 2c 23 26 30 42 3a |...9MOV |R0,#&0B:|
|00005420| 41 44 52 20 52 32 2c 73 | 70 72 69 74 65 70 61 74 |ADR R2,s|pritepat|
|00005430| 68 3a 53 57 49 20 26 34 | 30 30 45 39 3a 42 20 6d |h:SWI &4|00E9:B m|
|00005440| 61 73 74 65 72 65 78 69 | 74 0d 19 a0 0f 2e 73 70 |asterexi|t.....sp|
|00005450| 72 69 74 65 70 61 74 68 | 0d 19 aa 2a 45 51 55 53 |ritepath|...*EQUS|
|00005460| 22 3c 54 4e 43 38 24 44 | 69 72 3e 2e 21 53 70 72 |"<TNC8$D|ir>.!Spr|
|00005470| 69 74 65 73 22 3a 45 51 | 55 42 20 30 3a 41 4c 49 |ites":EQ|UB 0:ALI|
|00005480| 47 4e 0d 19 b4 05 3b 0d | 19 be 1f 3b 54 65 72 6d |GN....;.|...;Term|
|00005490| 69 6e 61 6c 20 74 6f 20 | 54 4e 43 20 66 61 63 69 |inal to |TNC faci|
|000054a0| 6c 69 74 69 65 73 0d 19 | c8 1f 3b 3d 3d 3d 3d 3d |lities..|..;=====|
|000054b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000054c0| 3d 3d 3d 3d 3d 0d 19 d2 | 30 2e 73 65 6e 64 73 74 |=====...|0.sendst|
|000054d0| 3a 42 4c 20 73 77 69 74 | 63 68 6f 75 74 3a 42 4c |:BL swit|chout:BL|
|000054e0| 20 73 65 6e 64 73 74 31 | 3a 42 20 6d 61 73 74 65 | sendst1|:B maste|
|000054f0| 72 65 78 69 74 0d 19 dc | 30 2e 73 65 6e 64 73 6d |rexit...|0.sendsm|
|00005500| 3a 42 4c 20 73 77 69 74 | 63 68 6f 75 74 3a 42 4c |:BL swit|chout:BL|
|00005510| 20 73 65 6e 64 73 6d 31 | 3a 42 20 6d 61 73 74 65 | sendsm1|:B maste|
|00005520| 72 65 78 69 74 0d 19 e6 | 05 3b 0d 19 f0 39 2e 73 |rexit...|.;...9.s|
|00005530| 65 6e 64 73 74 31 3b 20 | 53 65 6e 64 20 61 20 43 |endst1; |Send a C|
|00005540| 52 20 6f 72 20 30 20 74 | 65 72 6d 69 6e 61 74 65 |R or 0 t|erminate|
|00005550| 64 20 73 74 72 69 6e 67 | 20 74 6f 20 74 68 65 20 |d string| to the |
|00005560| 54 4e 43 0d 19 fa 2b 3b | 20 20 20 20 20 20 20 20 |TNC...+;| |
|00005570| 20 52 31 20 63 6f 6e 74 | 61 69 6e 73 20 61 64 64 | R1 cont|ains add|
|00005580| 72 65 73 73 20 6f 66 20 | 73 74 72 69 6e 67 0d 1a |ress of |string..|
|00005590| 04 3e 42 49 43 20 52 32 | 2c 52 32 2c 52 32 3a 42 |.>BIC R2|,R2,R2:B|
|000055a0| 49 43 20 52 33 2c 52 33 | 2c 52 33 3a 42 49 43 20 |IC R3,R3|,R3:BIC |
|000055b0| 52 30 2c 52 30 2c 52 30 | 3a 4d 4f 56 20 52 30 2c |R0,R0,R0|:MOV R0,|
|000055c0| 23 33 3a 4d 4f 56 20 52 | 32 2c 52 31 0d 1a 0e 0f |#3:MOV R|2,R1....|
|000055d0| 2e 74 6f 70 73 65 6e 64 | 73 74 31 0d 1a 18 41 4c |.topsend|st1...AL|
|000055e0| 44 52 42 20 52 31 2c 5b | 52 32 2c 52 33 5d 3a 53 |DRB R1,[|R2,R3]:S|
|000055f0| 57 49 22 4f 53 5f 53 65 | 72 69 61 6c 4f 70 22 3a |WI"OS_Se|rialOp":|
|00005600| 42 43 53 20 73 65 6e 64 | 73 74 31 74 72 6f 75 62 |BCS send|st1troub|
|00005610| 3a 2e 72 65 74 73 65 6e | 64 73 74 31 0d 1a 22 2f |:.retsen|dst1.."/|
|00005620| 54 45 51 20 52 31 2c 23 | 26 30 44 3a ec 51 20 52 |TEQ R1,#|&0D:.Q R|
|00005630| 31 35 2c 52 31 34 3a 54 | 45 51 20 52 31 2c 23 30 |15,R14:T|EQ R1,#0|
|00005640| 3a ec 51 20 52 31 35 2c | 52 31 34 0d 1a 2c 1d 41 |:.Q R15,|R14..,.A|
|00005650| 44 44 20 52 33 2c 52 33 | 2c 23 31 3a 42 20 74 6f |DD R3,R3|,#1:B to|
|00005660| 70 73 65 6e 64 73 74 31 | 0d 1a 36 11 2e 73 65 6e |psendst1|..6..sen|
|00005670| 64 73 74 31 74 72 6f 75 | 62 0d 1a 40 23 53 57 49 |dst1trou|b..@#SWI|
|00005680| 22 4f 53 5f 53 65 72 69 | 61 6c 4f 70 22 3a 42 43 |"OS_Seri|alOp":BC|
|00005690| 43 20 72 65 74 73 65 6e | 64 73 74 31 0d 1a 4a 23 |C retsen|dst1..J#|
|000056a0| 53 57 49 22 4f 53 5f 53 | 65 72 69 61 6c 4f 70 22 |SWI"OS_S|erialOp"|
|000056b0| 3a 42 43 43 20 72 65 74 | 73 65 6e 64 73 74 31 0d |:BCC ret|sendst1.|
|000056c0| 1a 54 23 53 57 49 22 4f | 53 5f 53 65 72 69 61 6c |.T#SWI"O|S_Serial|
|000056d0| 4f 70 22 3a 42 43 43 20 | 72 65 74 73 65 6e 64 73 |Op":BCC |retsends|
|000056e0| 74 31 0d 1a 5e 0d 2e 73 | 65 6e 64 73 6d 62 31 0d |t1..^..s|endsmb1.|
|000056f0| 1a 68 46 41 44 52 20 52 | 30 2c 73 65 6e 64 73 74 |.hFADR R|0,sendst|
|00005700| 31 6d 73 67 3a 53 54 4d | 46 41 20 52 31 32 21 2c |1msg:STM|FA R12!,|
|00005710| 7b 52 31 34 7d 3a 42 4c | 20 72 65 70 6f 72 74 65 |{R14}:BL| reporte|
|00005720| 72 72 6f 72 3a 4c 44 4d | 46 41 20 52 31 32 21 2c |rror:LDM|FA R12!,|
|00005730| 7b 52 31 34 7d 0d 1a 72 | 1b 4d 4f 56 20 52 31 35 |{R14}..r|.MOV R15|
|00005740| 2c 52 31 34 3a 2e 73 65 | 6e 64 73 74 31 6d 73 67 |,R14:.se|ndst1msg|
|00005750| 0d 1a 7c 3e 45 51 55 53 | 20 22 53 65 72 69 61 6c |..|>EQUS| "Serial|
|00005760| 20 6f 75 74 70 75 74 20 | 63 6f 6e 73 74 69 70 61 | output |constipa|
|00005770| 74 65 64 2c 20 70 6f 73 | 73 69 62 6c 65 20 64 61 |ted, pos|sible da|
|00005780| 74 61 20 6c 6f 73 73 22 | 3a 41 4c 49 47 4e 0d 1a |ta loss"|:ALIGN..|
|00005790| 86 04 0d 1a 90 39 2e 73 | 65 6e 64 73 6d 31 3b 20 |.....9.s|endsm1; |
|000057a0| 53 65 6e 64 20 61 20 43 | 52 20 6f 72 20 30 20 74 |Send a C|R or 0 t|
|000057b0| 65 72 6d 69 6e 61 74 65 | 64 20 73 74 72 69 6e 67 |erminate|d string|
|000057c0| 20 74 6f 20 74 68 65 20 | 54 4e 43 0d 1a 9a 46 3b | to the |TNC...F;|
|000057d0| 20 20 20 20 20 20 20 20 | 20 75 73 69 6e 67 20 26 | | using &|
|000057e0| 35 45 20 74 6f 20 69 6e | 64 69 63 61 74 65 20 74 |5E to in|dicate t|
|000057f0| 68 61 74 20 74 68 65 20 | 6e 65 78 74 20 63 68 61 |hat the |next cha|
|00005800| 72 61 63 74 65 72 20 69 | 73 20 63 6f 6e 74 72 6f |racter i|s contro|
|00005810| 6c 0d 1a a4 2b 3b 20 20 | 20 20 20 20 20 20 20 52 |l...+; | R|
|00005820| 31 20 63 6f 6e 74 61 69 | 6e 73 20 61 64 64 72 65 |1 contai|ns addre|
|00005830| 73 73 20 6f 66 20 73 74 | 72 69 6e 67 0d 1a ae 3e |ss of st|ring...>|
|00005840| 42 49 43 20 52 32 2c 52 | 32 2c 52 32 3a 42 49 43 |BIC R2,R|2,R2:BIC|
|00005850| 20 52 33 2c 52 33 2c 52 | 33 3a 42 49 43 20 52 30 | R3,R3,R|3:BIC R0|
|00005860| 2c 52 30 2c 52 30 3a 4d | 4f 56 20 52 30 2c 23 33 |,R0,R0:M|OV R0,#3|
|00005870| 3a 4d 4f 56 20 52 32 2c | 52 31 0d 1a b8 0f 2e 74 |:MOV R2,|R1.....t|
|00005880| 6f 70 73 65 6e 64 73 6d | 31 0d 1a c2 3b 4c 44 52 |opsendsm|1...;LDR|
|00005890| 42 20 52 31 2c 5b 52 32 | 2c 52 33 5d 3a 54 45 51 |B R1,[R2|,R3]:TEQ|
|000058a0| 20 52 31 2c 23 26 35 45 | 3a 42 45 51 20 73 65 6e | R1,#&5E|:BEQ sen|
|000058b0| 64 73 6d 31 70 72 6f 63 | 3a 2e 72 65 74 73 6d 31 |dsm1proc|:.retsm1|
|000058c0| 70 72 6f 63 0d 1a cc 31 | 53 57 49 22 4f 53 5f 53 |proc...1|SWI"OS_S|
|000058d0| 65 72 69 61 6c 4f 70 22 | 3a 42 43 53 20 73 65 6e |erialOp"|:BCS sen|
|000058e0| 64 73 6d 31 74 72 6f 75 | 62 3a 2e 72 65 74 73 65 |dsm1trou|b:.retse|
|000058f0| 6e 64 73 6d 31 0d 1a d6 | 2f 54 45 51 20 52 31 2c |ndsm1...|/TEQ R1,|
|00005900| 23 26 30 44 3a ec 51 20 | 52 31 35 2c 52 31 34 3a |#&0D:.Q |R15,R14:|
|00005910| 54 45 51 20 52 31 2c 23 | 30 3a ec 51 20 52 31 35 |TEQ R1,#|0:.Q R15|
|00005920| 2c 52 31 34 0d 1a e0 1d | 41 44 44 20 52 33 2c 52 |,R14....|ADD R3,R|
|00005930| 33 2c 23 31 3a 42 20 74 | 6f 70 73 65 6e 64 73 6d |3,#1:B t|opsendsm|
|00005940| 31 0d 1a ea 11 2e 73 65 | 6e 64 73 6d 31 74 72 6f |1.....se|ndsm1tro|
|00005950| 75 62 0d 1a f4 23 53 57 | 49 22 4f 53 5f 53 65 72 |ub...#SW|I"OS_Ser|
|00005960| 69 61 6c 4f 70 22 3a 42 | 43 43 20 72 65 74 73 65 |ialOp":B|CC retse|
|00005970| 6e 64 73 6d 31 0d 1a fe | 23 53 57 49 22 4f 53 5f |ndsm1...|#SWI"OS_|
|00005980| 53 65 72 69 61 6c 4f 70 | 22 3a 42 43 43 20 72 65 |SerialOp|":BCC re|
|00005990| 74 73 65 6e 64 73 6d 31 | 0d 1b 08 23 53 57 49 22 |tsendsm1|...#SWI"|
|000059a0| 4f 53 5f 53 65 72 69 61 | 6c 4f 70 22 3a 42 43 43 |OS_Seria|lOp":BCC|
|000059b0| 20 72 65 74 73 65 6e 64 | 73 6d 31 0d 1b 12 0e 42 | retsend|sm1....B|
|000059c0| 20 73 65 6e 64 73 6d 62 | 31 0d 1b 1c 10 2e 73 65 | sendsmb|1.....se|
|000059d0| 6e 64 73 6d 31 70 72 6f | 63 0d 1b 26 20 41 44 44 |ndsm1pro|c..& ADD|
|000059e0| 20 52 33 2c 52 33 2c 23 | 31 3a 4c 44 52 42 20 52 | R3,R3,#|1:LDRB R|
|000059f0| 31 2c 5b 52 32 2c 52 33 | 5d 0d 1b 30 1a 54 45 51 |1,[R2,R3|]..0.TEQ|
|00005a00| 20 52 31 2c 23 26 35 45 | 3a 42 45 51 20 73 65 6e | R1,#&5E|:BEQ sen|
|00005a10| 64 63 72 0d 1b 3a 1f 53 | 55 42 20 52 31 2c 52 31 |dcr..:.S|UB R1,R1|
|00005a20| 2c 23 26 36 30 3a 42 20 | 72 65 74 73 6d 31 70 72 |,#&60:B |retsm1pr|
|00005a30| 6f 63 0d 1b 44 0b 2e 73 | 65 6e 64 63 72 0d 1b 4e |oc..D..s|endcr..N|
|00005a40| 2d 4d 4f 56 20 52 31 2c | 23 26 30 44 3a 53 57 49 |-MOV R1,|#&0D:SWI|
|00005a50| 22 4f 53 5f 53 65 72 69 | 61 6c 4f 70 22 3a 42 43 |"OS_Seri|alOp":BC|
|00005a60| 53 20 73 65 6e 64 73 6d | 62 31 0d 1b 58 1c 4d 4f |S sendsm|b1..X.MO|
|00005a70| 56 20 52 31 2c 23 26 35 | 45 3a 42 20 72 65 74 73 |V R1,#&5|E:B rets|
|00005a80| 65 6e 64 73 6d 31 0d 1b | 62 04 0d 1b 6c 30 2e 73 |endsm1..|b...l0.s|
|00005a90| 77 69 74 63 68 6f 75 74 | 3b 20 45 6e 74 65 72 65 |witchout|; Entere|
|00005aa0| 64 20 77 69 74 68 20 73 | 74 72 65 61 6d 20 6e 75 |d with s|tream nu|
|00005ab0| 6d 62 65 72 20 69 6e 20 | 52 32 0d 1b 76 34 53 54 |mber in |R2..v4ST|
|00005ac0| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 2d 52 35 7d |MFA R12!|,{R1-R5}|
|00005ad0| 3a 80 53 20 52 32 2c 52 | 32 2c 23 26 46 46 3a 42 |:.S R2,R|2,#&FF:B|
|00005ae0| 45 51 6f 75 74 73 77 69 | 74 63 68 6f 75 74 0d 1b |EQoutswi|tchout..|
|00005af0| 80 36 42 49 43 20 52 33 | 2c 52 33 2c 52 33 3a 4c |.6BIC R3|,R3,R3:L|
|00005b00| 44 52 42 20 52 33 2c 6c | 74 78 3a 54 45 51 20 52 |DRB R3,l|tx:TEQ R|
|00005b10| 32 2c 52 33 3a 42 45 51 | 6f 75 74 73 77 69 74 63 |2,R3:BEQ|outswitc|
|00005b20| 68 6f 75 74 0d 1b 8a 10 | 42 49 43 20 52 30 2c 52 |hout....|BIC R0,R|
|00005b30| 30 2c 52 30 0d 1b 94 3b | 4c 44 52 20 52 35 2c 66 |0,R0...;|LDR R5,f|
|00005b40| 6c 61 67 62 61 73 65 3a | 4d 4f 56 20 52 34 2c 52 |lagbase:|MOV R4,R|
|00005b50| 32 3a 4d 4f 56 20 52 34 | 2c 52 34 2c 4c 53 4c 23 |2:MOV R4|,R4,LSL#|
|00005b60| 35 3a 41 44 44 20 52 34 | 2c 52 34 2c 23 32 30 0d |5:ADD R4|,R4,#20.|
|00005b70| 1b 9e 33 4c 44 52 20 52 | 32 2c 5b 52 35 2c 52 34 |..3LDR R|2,[R5,R4|
|00005b80| 5d 3a 4d 4f 56 20 52 31 | 2c 52 32 3a 80 20 52 31 |]:MOV R1|,R2:. R1|
|00005b90| 2c 52 31 2c 23 26 46 46 | 3a 4d 4f 56 20 52 30 2c |,R1,#&FF|:MOV R0,|
|00005ba0| 23 33 0d 1b a8 26 53 57 | 49 22 4f 53 5f 53 65 72 |#3...&SW|I"OS_Ser|
|00005bb0| 69 61 6c 4f 70 22 3a 42 | 43 53 73 77 69 74 63 68 |ialOp":B|CSswitch|
|00005bc0| 6f 75 74 74 72 6f 75 62 | 0d 1b b2 20 4d 4f 56 20 |outtroub|... MOV |
|00005bd0| 52 31 2c 52 32 2c 4c 53 | 52 23 38 3a 80 20 52 31 |R1,R2,LS|R#8:. R1|
|00005be0| 2c 52 31 2c 23 26 46 46 | 0d 1b bc 26 53 57 49 22 |,R1,#&FF|...&SWI"|
|00005bf0| 4f 53 5f 53 65 72 69 61 | 6c 4f 70 22 3a 42 43 53 |OS_Seria|lOp":BCS|
|00005c00| 73 77 69 74 63 68 6f 75 | 74 74 72 6f 75 62 0d 1b |switchou|ttroub..|
|00005c10| c6 11 2e 6f 75 74 73 77 | 69 74 63 68 6f 75 74 0d |...outsw|itchout.|
|00005c20| 1b d0 2e 4c 44 4d 46 41 | 20 52 31 32 21 2c 7b 52 |...LDMFA| R12!,{R|
|00005c30| 31 2d 52 35 7d 3a 54 45 | 51 20 52 32 2c 23 30 3a |1-R5}:TE|Q R2,#0:|
|00005c40| 53 54 52 4e 45 42 20 52 | 32 2c 6c 74 78 0d 1b da |STRNEB R|2,ltx...|
|00005c50| 0f 4d 4f 56 20 52 31 35 | 2c 52 31 34 0d 1b e4 13 |.MOV R15|,R14....|
|00005c60| 2e 73 77 69 74 63 68 6f | 75 74 74 72 6f 75 62 0d |.switcho|uttroub.|
|00005c70| 1b ee 46 41 44 52 20 52 | 30 2c 73 65 6e 64 73 74 |..FADR R|0,sendst|
|00005c80| 31 6d 73 67 3a 53 54 4d | 46 41 20 52 31 32 21 2c |1msg:STM|FA R12!,|
|00005c90| 7b 52 31 34 7d 3a 42 4c | 20 72 65 70 6f 72 74 65 |{R14}:BL| reporte|
|00005ca0| 72 72 6f 72 3a 4c 44 4d | 46 41 20 52 31 32 21 2c |rror:LDM|FA R12!,|
|00005cb0| 7b 52 31 34 7d 0d 1b f8 | 12 42 20 6f 75 74 73 77 |{R14}...|.B outsw|
|00005cc0| 69 74 63 68 6f 75 74 0d | 1c 02 25 2e 73 74 6f 69 |itchout.|..%.stoi|
|00005cd0| 70 62 3a 42 4c 20 69 70 | 62 75 66 66 61 64 64 3a |pb:BL ip|buffadd:|
|00005ce0| 42 20 6d 61 73 74 65 72 | 65 78 69 74 0d 1c 0c 04 |B master|exit....|
|00005cf0| 0d 1c 16 0e 2e 69 70 62 | 75 66 66 61 64 64 0d 1c |.....ipb|uffadd..|
|00005d00| 20 15 53 54 4d 46 41 20 | 31 32 21 2c 7b 52 30 2d | .STMFA |12!,{R0-|
|00005d10| 52 36 7d 0d 1c 2a 39 42 | 49 43 20 52 30 2c 52 30 |R6}..*9B|IC R0,R0|
|00005d20| 2c 52 30 3a 42 49 43 20 | 52 31 2c 52 31 2c 52 31 |,R0:BIC |R1,R1,R1|
|00005d30| 3a 4c 44 52 20 52 32 2c | 69 70 62 75 66 66 65 72 |:LDR R2,|ipbuffer|
|00005d40| 3a 4c 44 52 20 52 33 2c | 69 70 69 6e 0d 1c 34 1a |:LDR R3,|ipin..4.|
|00005d50| 4d 4f 56 20 52 30 2c 23 | 34 3a 4c 44 52 20 52 35 |MOV R0,#|4:LDR R5|
|00005d60| 2c 69 70 6f 75 74 0d 1c | 3e 11 2e 74 6f 70 69 70 |,ipout..|>..topip|
|00005d70| 62 75 66 66 61 64 64 0d | 1c 48 41 53 55 42 53 20 |buffadd.|.HASUBS |
|00005d80| 52 36 2c 52 35 2c 52 33 | 3a 43 4d 50 20 52 36 2c |R6,R5,R3|:CMP R6,|
|00005d90| 23 31 3a 42 45 51 20 6e | 6f 6d 6f 72 65 69 70 3b |#1:BEQ n|omoreip;|
|00005da0| 20 43 68 65 63 6b 20 74 | 6f 20 73 65 65 20 6e 6f | Check t|o see no|
|00005db0| 20 6f 76 65 72 72 75 6e | 0d 1c 52 14 53 57 49 22 | overrun|..R.SWI"|
|00005dc0| 4f 53 5f 53 65 72 69 61 | 6c 4f 70 22 0d 1c 5c 10 |OS_Seria|lOp"..\.|
|00005dd0| 42 43 53 20 6e 6f 6d 6f | 72 65 69 70 0d 1c 66 31 |BCS nomo|reip..f1|
|00005de0| 53 54 52 42 20 52 31 2c | 5b 52 32 2c 52 33 5d 3a |STRB R1,|[R2,R3]:|
|00005df0| 41 44 44 20 52 33 2c 52 | 33 2c 23 31 3b 20 4e 65 |ADD R3,R|3,#1; Ne|
|00005e00| 78 74 20 66 72 65 65 20 | 73 70 61 63 65 0d 1c 70 |xt free |space..p|
|00005e10| 14 42 49 43 20 52 33 2c | 52 33 2c 23 26 31 30 30 |.BIC R3,|R3,#&100|
|00005e20| 30 0d 1c 7a 12 42 20 74 | 6f 70 69 70 62 75 66 66 |0..z.B t|opipbuff|
|00005e30| 61 64 64 0d 1c 84 0d 2e | 6e 6f 6d 6f 72 65 69 70 |add.....|nomoreip|
|00005e40| 0d 1c 8e 0f 53 54 52 20 | 52 33 2c 69 70 69 6e 0d |....STR |R3,ipin.|
|00005e50| 1c 98 16 4c 44 4d 46 41 | 20 52 31 32 21 2c 7b 52 |...LDMFA| R12!,{R|
|00005e60| 30 2d 52 36 7d 0d 1c a2 | 0f 4d 4f 56 20 52 31 35 |0-R6}...|.MOV R15|
|00005e70| 2c 52 31 34 0d 1c ac 04 | 0d 1c b6 21 3b 20 e8 20 |,R14....|...!; . |
|00005e80| 53 57 49 54 43 48 20 80 | 20 43 4f 4d 4d 41 4e 44 |SWITCH .| COMMAND|
|00005e90| 20 44 45 43 4f 44 49 4e | 47 0d 1c c0 18 3b 20 69 | DECODIN|G....; i|
|00005ea0| 70 73 77 66 6c 20 64 65 | 66 69 6e 69 74 69 6f 6e |pswfl de|finition|
|00005eb0| 73 0d 1c ca 21 3b 20 42 | 69 74 20 30 20 57 68 65 |s...!; B|it 0 Whe|
|00005ec0| 6e 20 30 20 62 79 70 61 | 73 73 20 72 6f 75 74 69 |n 0 bypa|ss routi|
|00005ed0| 6e 65 0d 1c d4 3c 3b 20 | 42 69 74 20 31 20 57 68 |ne...<; |Bit 1 Wh|
|00005ee0| 65 6e 20 31 20 73 65 6e | 64 20 6e 65 78 74 20 63 |en 1 sen|d next c|
|00005ef0| 68 61 72 20 74 6f 20 73 | 74 72 65 61 6d 69 70 2b |har to s|treamip+|
|00005f00| 31 20 74 68 65 6e 20 70 | 72 6f 63 65 73 73 0d 1c |1 then p|rocess..|
|00005f10| de 04 0d 1c e8 0d 2e 69 | 70 73 77 69 74 63 68 0d |.......i|pswitch.|
|00005f20| 1c f2 18 3b 20 43 68 61 | 72 61 63 74 65 72 20 69 |...; Cha|racter i|
|00005f30| 73 20 69 6e 20 52 31 0d | 1c fc 15 53 54 4d 46 41 |s in R1.|...STMFA|
|00005f40| 20 31 32 21 2c 7b 52 30 | 2c 52 34 7d 0d 1d 06 11 | 12!,{R0|,R4}....|
|00005f50| 4c 44 52 20 52 30 2c 69 | 70 73 77 66 6c 0d 1d 10 |LDR R0,i|pswfl...|
|00005f60| 1d 54 53 54 20 52 30 2c | 23 31 3a 42 45 51 20 6f |.TST R0,|#1:BEQ o|
|00005f70| 75 74 69 70 73 77 69 74 | 63 68 0d 1d 1a 10 2e 6f |utipswit|ch.....o|
|00005f80| 75 74 69 70 73 77 69 74 | 63 68 0d 1d 24 15 4c 44 |utipswit|ch..$.LD|
|00005f90| 4d 46 41 20 31 32 21 2c | 7b 52 30 2c 52 34 7d 0d |MFA 12!,|{R0,R4}.|
|00005fa0| 1d 2e 0f 4d 4f 56 20 52 | 31 35 2c 52 31 34 0d 1d |...MOV R|15,R14..|
|00005fb0| 38 04 0d 1d 42 18 3b 44 | 65 62 75 67 67 69 6e 67 |8...B.;D|ebugging|
|00005fc0| 20 55 74 69 6c 69 74 69 | 65 73 0d 1d 4c 18 3b 3d | Utiliti|es..L.;=|
|00005fd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005fe0| 3d 3d 0d 1d 56 05 3b 0d | 1d 60 0a 2e 67 70 65 72 |==..V.;.|.`..gper|
|00005ff0| 72 0d 1d 6a 96 53 54 4d | 46 41 20 52 31 32 21 2c |r..j.STM|FA R12!,|
|00006000| 7b 52 30 2d 52 35 2c 52 | 31 34 7d 3a 41 44 52 20 |{R0-R5,R|14}:ADR |
|00006010| 52 30 2c 67 70 65 72 72 | 73 3a 42 4c 20 72 65 70 |R0,gperr|s:BL rep|
|00006020| 6f 72 74 65 72 72 6f 72 | 3a 4c 44 4d 46 41 20 52 |orterror|:LDMFA R|
|00006030| 31 32 21 2c 7b 52 30 2d | 52 35 2c 52 31 34 7d 3a |12!,{R0-|R5,R14}:|
|00006040| 4d 4f 56 20 52 31 35 2c | 52 31 34 3a 2e 67 70 65 |MOV R15,|R14:.gpe|
|00006050| 72 72 73 3a 45 51 55 44 | 30 3a 45 51 55 53 22 44 |rrs:EQUD|0:EQUS"D|
|00006060| 65 62 75 67 20 45 72 72 | 6f 72 20 68 61 73 20 62 |ebug Err|or has b|
|00006070| 65 65 6e 20 63 61 6c 6c | 65 64 22 3a 45 51 55 42 |een call|ed":EQUB|
|00006080| 30 3a 41 4c 49 47 4e 0d | 1d 74 04 0d 1d 7e 04 0d |0:ALIGN.|.t...~..|
|00006090| 1d 88 12 2e 72 65 67 74 | 77 65 6c 76 65 69 6e 69 |....regt|welveini|
|000060a0| 74 0d 1d 92 2a 41 44 52 | 20 52 31 32 2c 73 74 61 |t...*ADR| R12,sta|
|000060b0| 63 6b 3a 42 20 72 65 67 | 74 77 65 6c 76 65 69 6e |ck:B reg|twelvein|
|000060c0| 69 74 65 64 3a 2e 73 74 | 61 63 6b 0d 1d 9c 05 5d |ited:.st|ack....]|
|000060d0| 0d 1d a6 09 4c 25 3d 50 | 25 0d 1d b0 05 e1 0d ff |....L%=P|%.......|
+--------+-------------------------+-------------------------+--------+--------+